是否有一种简单的方法可以将栅格直接加载到R中作为矩阵,而不是加载栅格,然后使用as.matrix()
将其转换为矩阵,即
myras <- raster("file.tif")
mymat <- as.matrix(myras)
答案 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"))