【问题标题】:warning when creating a raster from XYZ: additional columns are a problem?从 XYZ 创建栅格时出现警告:附加列有问题?
【发布时间】:2021-03-25 14:50:10
【问题描述】:

我尝试使用“xyz”阅读风格构建具有 2 层的 SpatRast。它使用 3 列作为 rast 函数的输入,但我收到一条包含 4 列的警告消息:

> rast(as.matrix(data.frame(x=c(1,1,2,2),y=c(1,2,1,2),z1=1:4)),type="xyz")
class       : SpatRaster 
dimensions  : 2, 2, 1  (nrow, ncol, nlyr)
resolution  : 1, 1  (x, y)
extent      : 0.5, 2.5, 0.5, 2.5  (xmin, xmax, ymin, ymax)
coord. ref. :  
data source : memory 
names       : z1 
min values  :  1 
max values  :  4

> r=rast(as.matrix(data.frame(x=c(1,1,2,2),y=c(1,2,1,2),z1=1:4,z2=5:8)),type="xyz")
Warning message:
In v[cells] <- xyz[, 3:d[2]] :
 number of items to replace is not a multiple of replacement length

知道为什么吗?

【问题讨论】:

    标签: r raster terra


    【解决方案1】:

    这是个问题,我刚刚fixed it;我现在得到:

    library(terra)
    #terra version 1.0.0
    m <- cbind(x=c(1,1,2,2), y=c(1,2,1,2), z1=1:4, z2=5:8)
    r <- rast(m, type="xyz")
    values(r)
    #     z1 z2
    #[1,]  2  6
    #[2,]  4  8
    #[3,]  1  5
    #[4,]  3  7
    

    as.data.frame(r, xy=TRUE)
    #  x y z1 z2
    #1 1 2  2  6
    #2 2 2  4  8
    #3 1 1  1  5
    #4 2 1  3  7
    

    感谢您报告此事。 (如果你很确定某件事是一个错误,最好的报告位置是here

    【讨论】:

    • 非常感谢。我会尝试更好地调整我的帖子的目的地。我经常在 Github 或 Stackoverflow 报告之间犹豫不决,因为很难确定问题出在哪里。
    • 我明白了。如果有疑问,我认为来这里比较好
    猜你喜欢
    • 2021-12-31
    • 1970-01-01
    • 2011-03-02
    • 1970-01-01
    • 2015-03-17
    • 1970-01-01
    • 1970-01-01
    • 2019-02-13
    • 2020-07-26
    相关资源
    最近更新 更多