将栅格加载为矩阵

时间:2018-01-17 18:11:16

标签: r raster

是否有一种简单的方法可以将栅格直接加载到R中作为矩阵,而不是加载栅格,然后使用as.matrix()将其转换为矩阵,即

myras <- raster("file.tif")
mymat <- as.matrix(myras) 

2 个答案:

答案 0 :(得分:1)

另一种可能的解决方案是使用as,如下所示:

library(raster)
mymat <- as(raster("file.tif"), "matrix")

请记住,直接从文件中读取矩阵并不总是一种选择。由于您使用的是tiff文件,因此您可能拥有压缩栅格(例如,通过LZW,Packbits等)。因此,在访问栅格值并将其转换为matrix之前,必须首先加载和解压缩栅格。

答案 1 :(得分:0)

有类似的替代品,但我认为没有更简单的方法。 (除了png和其他一些图形格式外?)。没有进一步的解释,这似乎是一个奇怪的问题,因为你展示的非常简洁。您可以将两个语句组合成一行(向as.matrix添加8个字符)

library(raster)
myras <- as.matrix(raster("file.tif"))