问题描述
我正在尝试使用来自 ESA CCI (http://maps.elie.ucl.ac.be/CCI/viewer/download.php) 的土地覆盖数据转换此 .nc 文件。每年都有一个单独的 .nc 文件,每个文件包含变量 lccs_class、processed_flag、current_pixel_state、observation_count 和 change_count。
我想在 R 中打开这些文件中的每一个,并将它们导出为多波段栅格,每个变量都有一个波段(每年一个多波段栅格)。
但是,每当我尝试使用brick() 或stack() 读取这些文件时,nlayers 始终为1。如果我不使用varname 指定变量,则列出的名称是文件的日期(例如2016-01 -01).
library(raster)
library(rgdal)
library(ncdf4)
# using stack
test <- stack("ESA_CCI_LC_2016_2019/C3S-LC-L4-LCCS-Map-300m-P1Y-2016-v2.1.1.nc",varname="lccs_class")
test
输出为:
class : RasterStack
dimensions : 64800,129600,8398080000,1 (nrow,ncol,ncell,nlayers)
resolution : 0.002777778,0.002777778 (x,y)
extent : -180,180,-90,90 (xmin,xmax,ymin,ymax)
crs : +proj=longlat +datum=wgs84 +no_defs
names : Land.cover.class.defined.in.LCCS
当每个 .nc 文件代表一年(不是时间序列数据)时,我不确定获得所需输出的最佳方法。我曾尝试在光栅砖函数中使用 levels 参数和 lvar,但没有任何运气。任何建议将不胜感激!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)