【发布时间】:2016-10-26 13:39:54
【问题描述】:
这是错误信息:
"在 writeBin(v, x@file@con, size = x@file@dsize) : 写入问题 到连接 6:在 .rasterFromRasterFile(grdfile, band = band, objecttype) : 值文件的大小与单元格的数量不匹配 (给定数据类型)”
我有 15 个相同范围和维度的栅格文件。我只想找出跨时间(15 年)的数据的相关性,即 15 个栅格文件。
我使用了下面的脚本:
list <- c(list.files(pattern = "\\.tif$"))
y <- stack()
for (i in 1:length(list)){
y <- stack(y,list[i]) }
corT <- layerStats(y, 'pearson', na.rm=TRUE)
或 像这样直接使用堆叠文件
test = brick ("EOS_ALL_STACK.tif")
corT = layerStats(test, 'pearson', na.rm=TRUE)
我也试过用这个函数来得到相关系数和r平方
fun5=function(x) { if (is.na(x[1])){ NA } else { m <- lm(x[1:15] ~ c(1:15));summary(m)$coefficients[1,4]}} #fstatistic[1]
fun5=function(x) { if (is.na(x[1])){ NA } else { m <- lm(x[1:15] ~ c(1:15));summary(m)$coefficients[2,4]}} #fstatistic[2]
fun3=function(x) { if (is.na(x[1])){ NA } else { m <- lm(x[1:15] ~ x[1:15]);summary(m)$r.squared }}
然后使用“calc”计算所有像素的这些值。例如:
r.squared <- calc(y, fun3)
但是,我的结果仍然存在上述错误,即使有输出,也似乎没有意义。
【问题讨论】:
-
你能举一个可重现的例子吗? stackoverflow.com/questions/5963269/…
-
你的磁盘满了吗?
-
我真的一直在尝试这样做。我的文件是整个非洲大陆的非常大的图像。我已经能够拥有它们的真正删节版本,但仍然找不到在这里复制它们的方法。请问有什么建议吗?
-
磁盘已满你的意思是我的电脑硬盘空间吗?
-
是的。可能是您的临时文件夹的磁盘。这将解释“问题写作”
标签: r linear-regression r-raster pearson