如何在R中堆叠栅格文件?

3

我正在尝试使用dismo包在R中执行栅格堆叠,这涉及到三个.grd格式的空间栅格文件。这三个栅格文件位于路径"D:~"下。我使用以下代码:

files= list.files(path = "D:~",pattern = 'grd',full.names = TRUE)

我收到的错误输出为:

Error in x[[1]] : subscript out of bounds

请问有人能提供帮助吗?谢谢!

我觉得很难相信 list.files(path = "D:~",pattern = 'grd',full.names = TRUE) 的输出是 Error in x[[1]] : subscript out of bounds - jbaums
2个回答

5
如果文件在子目录中,那么可以使用 recursive=TRUE:
files <- list.files(path="D:", pattern="grd", all.files=FALSE, full.names=TRUE,recursive=TRUE)
s <- stack(files)

2

只需使用raster包中的stack函数:

files=c("layer1.grd", "layer2.grd", "layer3.grd") 
library(raster)
raster_stack=stack(files)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接