我有一个很大的压缩文件,里面有一堆geotiff文件,还有一个.vrt文件,其中包含每个文件所需的信息。与其解压缩所有文件,我想直接使用zip文件。
使用.vrt和一些geotiff文件,这个命令可以工作,因为临时光栅是作为一个rasterLayer创建的,但是由于不是所有的geotiff文件都是解压缩的,因此rasterLayer失败,缺少数据错误。
tempraster <- raster("data-raw/CoastalDEMv1.1/tiles.vrt")此命令失败,可能是因为我错误地指定了路径。
tempraster <- raster("data-raw/Global_90.zip/CoastalDEMv1.1/tiles.vrt")错误信息是
.rasterObjectFromFile中的错误(x,band = band,objecttype = " RasterLayer“):无法从该文件创建RasterLayer对象。(文件不存在)
据推测,这意味着raster认为路径的zip部分只是另一个文件夹。我要把它放在拉链里。
我在Mac上运行,操作系统是Catalina。
发布于 2019-11-16 00:02:39
来自gdal.org的一些文本
要指向zip文件中的文件,文件名必须是/vsizip/path/to/the/file.zip/path/inside/the/zip/file,格式,其中路径/ To //file.zip是相对的或绝对的,路径/ is //zip/ file是存档中文件的相对路径。
因此,对于我的数据集,我使用
link <- "/vsizip/data-raw/Global_90.zip/CoastalDEMv1.1/tiles.vrt"
test <- raster(link)测试具有以下特点
class : RasterLayer
dimensions : 139316, 432360, 60234665760 (nrow, ncol, ncell)
resolution : 0.0008326395, 0.0008326395 (x, y)
extent : -180, 180, -56, 60 (xmin, xmax, ymin, ymax)
crs : +proj=longlat +datum=WGS84 +no_defs +ellps=WGS84 +towgs84=0,0,0
source : /vsizip/data-raw/Global_90.zip/CoastalDEMv1.1/tiles.vrt
names : tiles 随着我的工作和了解更多,我将更新答案。
https://stackoverflow.com/questions/58782128
复制相似问题