从多个文件中提取 HDF 格式的变量并将堆栈转换为栅格格式

问题描述

我能够从一个 hdf 文件的多个变量中提取数据并绘制单个变量,但无法提取多个文件的数据Data Link here

library(raster)
library(ncdf4)
#plot TES single file 
r <- raster("E:/TES/TES-Aura_L3-O3-M2009m03_F01_12.hdf",var="Data Fields/OzoneTropColumn",ncdf=TRUE)
extent(r) <- c(-180,180,-90,90)
plot(r)

对于多个文件,我试图堆叠多个文件,然后提取单个变量“Data Fields/OzoneTropoColumn”并将每个文件转换为光栅格式。

O3 <- list.files("E:/TES",pattern = "*.hdf",full.names = TRUE) 
ncin <- raster::stack(O3,varname = "Data Fields/OzoneTropColumn")
writeraster(ncin,file.path('E:TES/Ras',paste0(names(ncin),".tif")),bylayer=TRUE,format="GTiff",overwrite=TRUE) 

但是,我收到以下错误

"rgdal::Gdalinfo 中的错误文件名,silent = 无声,returnRAT = RAT,returnCategoryNames = RAT): 未找到对象“RATlist” h(simpleError(msg,call)) 中的错误: 在为函数“stack”选择方法时评估参数“x”时出错:在为函数“stack”选择方法时计算参数“x”时出错:无法从此文件创建 RasterLayer 对象。 另外: 警告信息: 在 dim(x) 中:数据集中没有条带"

任何形式的帮助将不胜感激!

谢谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)