-1

我正在对数据框使用 R 和 rowSums 函数,如本文所述:Sum over spatialGridDataFrame: rowSums or colSums。现在起诉 rowSums 如下:

FLintMod[[2+nsim]] <- rowSums(FLintMod@data[, 2:(1+nsim)], na.rm=TRUE)

现在我面临新的错误,我真的不知道为什么我会收到这个错误:

Error in ncol(xj) : object 'xj' not found

你能帮我理解这个问题并解决它。

供您参考,此代码之前有效,但在改进代码并特别执行以下工作以将栅格返回到空间网格数据框后,我收到此错误:

FLintRaster <- raster(FLint[i+1])
FLintRasterMod <- mask(FLintRaster, FloodExtent)
FLintMod[[i+1]] <- as(FLintRasterMod,"SpatialGridDataFrame")@data 

最好的,

4

1 回答 1

-1

我终于找到了我的答案。我生成了数据框@数据框!在 oredr 将栅格返回到数据框时,我应该使用 as.vector() 函数。

FLintRaster <- raster(FLint[i+1])
FLintRasterMod <- mask(FLintRaster, FloodExtent)   
FLintMod[[i+1]] <- as.vector(FLintRasterMod, mode='any')

如果有人能从技术上解释我的情况,我会很高兴。我对 R 非常陌生,并且渴望学习它的基础知识。

最好的,

于 2017-07-16T07:32:15.163 回答