我的目标只是使用%in%运算符将栅格对象中的值与向量中的值进行比较。
直接从控制台运行就可以了:
values(raster(rbind(c(2,6,7,8),c(4,5,7),c(3,4,5),c(1,23,1,6))) %in% c(2,7))
[1] TRUE FALSE TRUE FALSE FALSE TRUE FALSE TRUE FALSE FALSE TRUE TRUE FALSE FALSE FALSE FALSE
但是我需要一个正在开发的程序包中的函数,并且我有以下代码:
test_lst <- function( rst) {
return ( rst %in% c( 2,7))
}
当我加载程序包并调用函数时:
devtools::load_all( ".")
test_lst( raster( rbind( c( 2,c( 4,c( 3,c( 1,6))))
我得到的是以下错误:
Error in match(x,table,nomatch = 0L) :
'match' requires vector arguments
我看不到我在做什么错。在描述文件的imports部分中声明了“ raster”。