Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/66.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在R中创建SpatialPixelsDataFrame对象(与AdeHabitation包兼容)_R_Raster - Fatal编程技术网

如何在R中创建SpatialPixelsDataFrame对象(与AdeHabitation包兼容)

如何在R中创建SpatialPixelsDataFrame对象(与AdeHabitation包兼容),r,raster,R,Raster,我的问题很简单。我在R中找到了一个名为adehabitat的非常好的软件包。要使用它,我需要将我的数据转换为特定结构的对象,其中包含光栅地图数据和动物坐标。要查看,请键入: # example data in adahabitat package data(bauges) bauges str(bauges) 如何将我的数据(如下)转换成这样的结构我知道如何将$LOC转换为空间点,但我不知道如何转换地图(在我的示例中,是个别栖息地类型的光栅值分类代码,即非连续变量) #我的示例数据: 图书馆(

我的问题很简单。我在R中找到了一个名为adehabitat的非常好的软件包。要使用它,我需要将我的数据转换为特定结构的对象,其中包含光栅地图数据和动物坐标。要查看,请键入:

# example data in adahabitat package
data(bauges)
bauges
str(bauges)
如何将我的数据(如下)转换成这样的结构我知道如何将
$LOC
转换为空间点,但我不知道如何转换地图(在我的示例中,是个别栖息地类型的光栅值分类代码,即非连续变量)

#我的示例数据:
图书馆(光栅)
图书馆(阿德斯)
#地图

habitat_type_temp您可以将位置放在某个地方以生成SpatialPixelsDataFrame,我认为这大致是爱荷华州:

x <- 93+rep(1:8,each=10)/100
y <- rep(seq(42.01,42.1,by=0.01), 8)
z <- c(1,1,1,1,1,1,1,1,2,2,
  1,1,2,2,1,1,1,2,2,2,
  1,2,2,2,3,3,3,2,2,2,
  2,2,2,1,1,1,3,2,2,1,
  2,2,1,1,1,1,3,2,1,1,
  2,1,1,1,1,1,3,3,1,1,
  2,1,1,1,1,3,3,3,3,1,
  1,1,1,1,1,1,1,3,3,3)
xy.df <- data.frame(x,y)
xy.coords <- SpatialPixels(SpatialPoints(xy.df))
llCRS <- CRS("+proj=utm +zone=15 +ellps=WGS84")
xy.sp <- SpatialPoints(xy.coords, proj4string = llCRS)
xyz <- as.data.frame(cbind(x,y,z))
xyz.spdf <- SpatialPixelsDataFrame(xy.coords, xyz)
plot(xyz.spdf)

x您可以将位置放在某个地方以生成SpatialPixelsDataFrame,我认为这大致是:

x <- 93+rep(1:8,each=10)/100
y <- rep(seq(42.01,42.1,by=0.01), 8)
z <- c(1,1,1,1,1,1,1,1,2,2,
  1,1,2,2,1,1,1,2,2,2,
  1,2,2,2,3,3,3,2,2,2,
  2,2,2,1,1,1,3,2,2,1,
  2,2,1,1,1,1,3,2,1,1,
  2,1,1,1,1,1,3,3,1,1,
  2,1,1,1,1,3,3,3,3,1,
  1,1,1,1,1,1,1,3,3,3)
xy.df <- data.frame(x,y)
xy.coords <- SpatialPixels(SpatialPoints(xy.df))
llCRS <- CRS("+proj=utm +zone=15 +ellps=WGS84")
xy.sp <- SpatialPoints(xy.coords, proj4string = llCRS)
xyz <- as.data.frame(cbind(x,y,z))
xyz.spdf <- SpatialPixelsDataFrame(xy.coords, xyz)
plot(xyz.spdf)

x非常感谢@tom.purucker提供模板。它工作得很好!非常感谢@tom.purucker提供模板。它工作得很好!