使用 R,我试图打开我在单个文件夹中的所有 netcdf 文件(例如 20 个文件),读取单个变量,并创建一个结合所有文件值的单个 data.frame。我一直在使用 RnetCDF 来读取 netcdf 文件。对于单个文件,我使用以下命令读取变量:
library('RNetCDF')
nc = open.nc('file.nc')
lw = var.get.nc(nc,'LWdown',start=c(414,315,1),count=c(1,1,240))
其中 414 和 315 是我要提取的值的经度和纬度,240 是时间步数。
我发现这个线程解释了如何打开多个文件。在它之后,我设法使用以下方法打开文件:
filenames= list.files('/MY_FOLDER/',pattern='*.nc',full.names=TRUE)
ldf = lapply(filenames,open.nc)
但现在我被困住了。我试过
var1= lapply(ldf, var.get.nc(ldf,'LWdown',start=c(414,315,1),count=c(1,1,240)))
但它不起作用。增加的复杂性是每个 nc 文件都有不同的时间步数。所以我有两个问题:
1:如何打开所有文件,读取每个文件中的变量并将所有值组合在一个数据框中?2:如何将最后一个维度设置count
为所有文件的变化?