我从工作目录之外的文件夹中将10多个光栅文件(单频段文件,不是很大)引入R中。单独调用文件是有效的,但它变得乏味。我见过人们使用类似的代码:
require(raster)
current.list <- list.files(path="Y:/Spatial/RasterData/current",
pattern =".tif", full.names=TRUE)
c.stack<- stack(current.list)
然而,它为我带来了各种错误。包括,&#34; .rasterObjectFromFile(x,band = band,objecttype =&#34; RasterLayer&#34;,:无法从此文件创建RasterLayer对象。(文件不存在)& #34;
注意,我已经尝试了几种不同的格式(.grd,.img),并且在运行命令之前通常还需要(rgdal)。提前感谢您的想法!
答案 0 :(得分:4)
我还没有对它进行过测试,但我想如果你添加一个&#34; $&#34;签到你的模式结束=&#34; .tif&#34;部分,即:
current.list <- list.files(path="Y:/Spatial/RasterData/current",
pattern =".tif$", full.names=TRUE)
......事情应该有效。 &#34; $&#34;符号本质上表示字符串的结尾,因此您只列出以&#34; .tif&#34;结尾的文件。除了(例如&#34; tif.aux.xml&#34;)。
祝你好运,如果不能为你做这件事,请告诉我。
答案 1 :(得分:0)
我遇到了这个问题。我只需要将工作目录设置为与要导入栅格的位置相同,然后就可以正常工作了。