raster::aggregate() 函数不适用于我自己的函数
Posted
技术标签:
【中文标题】raster::aggregate() 函数不适用于我自己的函数【英文标题】:raster::aggregate() function not work for my own function 【发布时间】:2012-06-04 01:59:10 【问题描述】:require(raster)
## Function to aggregate
fun.patch <- function(x)
if (max(table(x)) >= 0.9 * length(x))
return(as.vector(which.max(table(x))))
else
return(NA)
r.lc <- raster(nrows = 100, ncols = 100)
r.lc[] <- 1:6
aggregate(r.lc, fact = c(5,5), fun.patch)
FUN(newX[, i], ...) 中的错误:未使用的参数 (na.rm = TRUE)
【问题讨论】:
看?raster::aggregate
。您传递的函数应该接受或忽略 na.rm
参数。
【参考方案1】:
来自?raster::aggregate
- 您传递的函数应该接受或忽略na.rm
参数
要忽略,请在函数参数中包含...
fun.patch <- function(x,...)
if (max(table(x)) >= 0.9 * length(x))
return(as.vector(which.max(table(x))))
else
return(NA)
r.lc <- raster(nrows = 100, ncols = 100)
r.lc[] <- sample(1:6, 100^2, replace = T)
aggregate(r.lc, fact = c(5,5), fun.patch)
【讨论】:
以上是关于raster::aggregate() 函数不适用于我自己的函数的主要内容,如果未能解决你的问题,请参考以下文章