3

我已经下载了 USDA 作物数据层(数据可在此处获得,请注意大文件: http: //www.nass.usda.gov/research/Cropland/SARS1a.htm)并希望将其导入 R 进行分析。我导入了其他大型 GTIFF 文件(例如 LANDSAT 数据),但在调用该函数时出现以下错误:

r <- raster(file)

Error in .rasterObjectFromFile(x, band = band, objecttype = "RasterLayer",  :
    Cannot create a RasterLayer object from this file.

其中“文件”是美国农业部提供的任何 .tif 文件(我使用的是中西部地区汇编)。

我怀疑问题是 GTiff 是分类数据(土地利用类别)而不是真正的序数/光谱数据,但我不明白为什么它会在图像编辑器(例如预览)中呈现良好并在 R / GDAL 中退缩.

谢谢您的帮助。

编辑:如果这应该在 GIS 论坛上进行,请告诉我。一般来说,空间问题的编程方法似乎就在这里,不是吗?

4

2 回答 2

1

我能够使用相同的文件重新创建您的错误消息,并且似乎 GDAL 需要比主目录更深的路径名,至少在 Mac 上是这样。也就是说,需要返回到 /Users/myname/cdl_tm_r_nv_2010_utm11.tif 的路径名,而不仅仅是 ~/cdl_tm_r_nv_2010_utm11.tif 作为 USDA 裁剪文件示例之一。我设法用

library(raster)
r <- raster(file.choose())

然后只是导航到 GeoTiff。

于 2011-06-24T10:12:30.617 回答
1

嗯,重命名文件“temp.tif”或类似的东西解决了这个问题。非常奇怪,因为文件名仅包含 az、0-9 和 _ 字符。

对于遇到 GDAL 问题的其他人:建议使用它。如果有人知道真正的根本问题,请告诉我。原始文件名是cdl_tim_r_ia_2010_utm15.tif,cdl_tm_r_il_2010_utm16.tif等。

谢谢。

于 2011-06-24T16:24:11.897 回答