【发布时间】:2016-03-12 09:51:52
【问题描述】:
我正在尝试从 .csv 文件创建 NetCDF。我已经在这里和其他地方阅读了几个教程,但仍有一些疑问。
我有一张这样的表:
lat,long,time,rh,temp
41,-109,6,1,1
40,-107,18,2,2
39,-105,6,3,3
41,-103,18,4,4
40,-109,6,5,2
39,-107,18,6,4
我使用 R 中的 ncdf4 包创建 NetCDF。
xvals <- data$lon
yvals <- data$lat
nx <- length(xvals)
ny <- length(yvals)
lon1 <- ncdim_def("longitude", "degrees_east", xvals)
lat2 <- ncdim_def("latitude", "degrees_north", yvals)
time <- data$time
mv <- -999 #missing value to use
var_temp <- ncvar_def("temperatura", "celsius", list(lon1, lat2, time), longname="Temp. da superfície", mv)
var_rh <- ncvar_def("humidade", "%", list(lon1, lat2, time), longname = "humidade relativa", mv )
ncnew <- nc_create(filename, list(var_temp, var_rh))
ncvar_put(ncnew, var_temp, dadostemp, start=c(1,1,1), count=c(nx,ny,nt))
当我按照程序执行时,它指出 NC 期望的数据数量是我拥有的数据数量的 3 倍。 我明白为什么,每个维度都有一个矩阵,因为我说过变量是根据经度、纬度和时间。
那么,我将如何导入这种数据,我已经为每次数据采集提供了一个 Lon、Lat、Time 和其他变量?
有人能解释一下吗?
PS:这里使用的数据不是我的真实数据,只是我在教程中使用的一些示例。
【问题讨论】: