【问题标题】:Read out values in matrix form r-terra以矩阵形式读出值 r-terra
【发布时间】:2021-04-15 04:14:59
【问题描述】:

我有一个由 terra 包中的 rast() 创建的 SpatRaster 文件,我想以矩阵形式读出光栅的值。如果基础栅格具有 10 行和 10 列,我希望这些值采用相同的格式,但作为矩阵。

我尝试了一些方法,例如:

matrix(1:100, nrow = 10, ncol = 10) -> mm
rast(mm) -> spat_raster

as.matrix(spat_raster) %>% dim

但是,输出是 100x1 矩阵,而不是 10x10。 还有

values(spat_raster, mat = T)

不起作用。 有什么想法吗?

【问题讨论】:

    标签: r r-raster


    【解决方案1】:

    您可以将as.matrix 与参数wide=TRUE 一起使用。以下来自?as.matrix中的示例

    library(terra)
    r <- rast(ncol=2, nrow=2)
    values(r) <- 1:ncell(r)
    as.matrix(r, wide=TRUE)
    #     [,1] [,2]
    #[1,]    1    2
    #[2,]    3    4
    

    您也可以这样做(使用一层SpatRaster

    d <- dim(r)
    matrix(values(r), d[1], d[2], byrow=TRUE)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-07
      • 1970-01-01
      • 2016-05-12
      • 1970-01-01
      • 1970-01-01
      • 2021-05-30
      • 1970-01-01
      • 2016-08-25
      相关资源
      最近更新 更多