我正在使用 R 中的 Raster 包以 ERMapper 格式 (.ers) 将数据集写入文件,但是我遇到了生成的 .aux.xml 辅助文件(我实际上并不感兴趣)的问题。
简单的例子:
rst <- raster(ncols=15000,nrows=10000)
rst[] <- 1.234
writeRaster(rst, filename='_test.ers', overwrite=TRUE)
writeRaster()
line 执行需要一些时间,数据文件很大,磁盘上大约 1.2GB。检查正在发生的事情时
writeRaster()
执行后,我发现 .ers 文件(头文件 + 关联数据文件)通常在大约 20 秒内生成。然后,需要 writeRaster()
再用 20 - 25 秒生成 .aux.xml 文件,该文件仅包含诸如 min、max、mean 和 st 之类的统计信息。开发(这可能解释了为什么计算需要这么长时间)。由于我不关心 .aux.xml 文件,我想要
writeRaster()
根本不用理会它,并为我节省 20 - 25 秒的执行时间(我正在将大量这些数据集写入磁盘,因此我的代码中 50% 的加速是相当可观的)。任何人都知道如何告诉
writeRaster()
至 不是 创建一个 .aux.xml 文件?我怀疑这是一个与 GDAL 相关的问题,但经过大量研究还没有找到答案......任何帮助最受欢迎!
最佳答案
可以使用(不太容易找到)rgdal::setCPLConfigOption
设置与 GDAL 文件格式驱动程序相关的选项。功能。
在你的情况下,
rgdal::setCPLConfigOption("GDAL_PAM_ENABLED", "FALSE")
应该禁用
xml
文件创建。HTH
关于R:如何在没有辅助文件的情况下将光栅写入磁盘?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44123832/