velox 包点提取失败
Posted
技术标签:
【中文标题】velox 包点提取失败【英文标题】:velox package point extraction failure 【发布时间】:2018-06-24 02:12:59 【问题描述】:我正在尝试使用当前 (0.2.0) velox 包版本在 R 3.4.1 中使用 velox 包。我想使用 VeloxRaster_extract_points 功能提取光栅像素值,并且在我自己的数据失败后,我运行了当前参考手册第 19 页提供的确切代码。这返回了显示的错误(如下)。我一直无法在网上找到任何与此错误相关的参考资料。有什么建议么? 谢谢
> ## Make VeloxRaster with two bands
> set.seed(0)
> mat1 <- matrix(rnorm(100), 10, 10)
> mat2 <- matrix(rnorm(100), 10, 10)
> vx <- velox(list(mat1, mat2), extent=c(0,1,0,1), res=c(0.1,0.1),crs="+proj=longlat +datum=WGS84 +no_defs")
> ## Make SpatialPoints
> library(sp)
> library(rgeos)
> coord <- cbind(runif(10), runif(10))
> spoint <- SpatialPoints(coords=coord)
> ## Extract
> vx$extract_points(sp=spoint)
Error in envRefInferField(x, what, getClass(class(x)), selfEnv) :
‘extract_points’ is not a valid field or method name for reference class “VeloxRaster”
【问题讨论】:
【参考方案1】:尝试时,它适用于我的情况:
library('velox')
## Make VeloxRaster with two bands
set.seed(0)
mat1 <- matrix(rnorm(100), 10, 10)
mat2 <- matrix(rnorm(100), 10, 10)
vx <- velox(list(mat1, mat2), extent=c(0,1,0,1), res=c(0.1,0.1),
crs="+proj=longlat +datum=WGS84 +no_defs")
## Make SpatialPoints
library(sp)
library(rgeos)
coord <- cbind(runif(10), runif(10))
spoint <- SpatialPoints(coords=coord)
## Extract
vx$extract_points(sp=spoint)
[,1] [,2]
[1,] 0.76359346 -0.4125199
[2,] 0.35872890 0.3178857
[3,] 0.25222345 -1.1195991
[4,] 0.00837096 2.0247614
[5,] 0.77214219 -0.5922254
[6,] 0.00837096 2.0247614
[7,] 1.10096910 0.5989751
[8,] 1.15191175 -0.9558391
[9,] 0.14377148 -1.5236149
[10,] 1.27242932 0.0465803
我认为您可能需要重新安装该软件包。
【讨论】:
以上是关于velox 包点提取失败的主要内容,如果未能解决你的问题,请参考以下文章