【问题标题】:Import raster stack and return new layer导入栅格堆栈并返回新图层
【发布时间】:2013-05-01 18:52:31
【问题描述】:

我正在尝试使用 rasters 包将大约 50 个 .tif 文件导入堆栈。由于文件太多,我不想一一列出。我尝试了几种方法,但都没有成功,包括这段代码:

测试

此外,我想根据导入的 50 对新栅格进行分类。例如,我有一组具有相同范围的多边形(可以转换为栅格),并且想要计算每个多边形中出现值“1”的次数。我认为“覆盖”功能最适合此功能,但在思考如何编写相关功能时遇到了麻烦。任何帮助将不胜感激。

【问题讨论】:

  • 它是 50 无关紧要,只用两个进行测试,将它们全部列出,测试它们是否真的是可以用 file.exists() 看到的文件 - 我敢打赌是你的文件路径不正确,或者文件是光栅可读的,向自己证明它与 1 by raster(x) 一起工作

标签: r raster


【解决方案1】:

使用多个文件的更简单的方法应该是使用(进行一些修改)

f <- list.files(path='???', pattern='.tif$', full.names=TRUE)
s <- stack(f)

但如果你想以交互方式进行:

f <- choose.files()
s <- stack(f)

发生错误是因为您使用了“values=TRUE”(它不是堆栈的参数并被解释为文件名)

【讨论】:

    猜你喜欢
    • 2018-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-19
    • 1970-01-01
    • 2014-11-01
    • 1970-01-01
    • 2015-02-13
    相关资源
    最近更新 更多