r - 如何将 netcdf 文件中的数据写入 Excel 或文本文件?

标签 r netcdf

我有一个 6 维的 netcdf 文件:

f=open.ncdf("C:\\BR_Ban.nc")

我读取了变量日期:

A = get.var.ncdf(nc=f,varid="date",verbose=TRUE)

然后我像读取date 一样读取变量Tair。 我将两个变量写入两个文本文件。有人可以帮我将它们写入一个文本文件或Excel吗?这段代码只会写入一个变量:

write.table(as.double(A),"C:\\folder\\shwon_Br_Ban_flux net.txt")

这个变量date的问题是我得到了一个如下所示的文本文件:

"x"
"1"  2004
"2"   1
"3"  0.5
"4"  2004
"5"    1
"6"    1

最多

"157675" 2006
"157676" 365
"157677" 23.5
"157678" 2007
"157679" 366
"157680" 0

如您所见,所有内容都在一列“年、小时和日”中。有没有办法在一列中写入时间步长“半小时”,在另一列中写入年份,并且在一天中写入相同的时间步长?

最佳答案

f <- open.ncdf("C:\\BR_Ban.nc")
A <- get.var.ncdf(nc=f,varid="date")
B <- get.var.ncdf(nc=f,varid="Tair")
write.table(t(rbind(A,B)),file="output.txt")

正如 netCDF 文件摘要中提到的,date 有 2 个维度,维度 1(行)为 datedim,维度 2(列) time_counter,而 Tair 也有 2 个维度,其中 land 作为维度 1,time_counter 作为维度 2。因此,要将它们一起输出,您可以首先需要rbind它们,因为它们的共享维度是列(time_counter),然后转置。

关于r - 如何将 netcdf 文件中的数据写入 Excel 或文本文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12854565/

相关文章:

Matlab:4维矩阵中的平均值

python - 使用 xarray 从 netcdf 中提取最近的经纬度和时间值

python - 如何在 python 中从 vrt 文件创建栅格时间序列

r - 在 R 中获得多种分区方法的共识

r - 将单个变量-多字符向量拆分为 block

r - 无法在 Virtualbox 中的 CentOS 7 上编译 R Rspectra 包

python - 使用 xarray 为变量分配新坐标

g++ - 警告 : format ‘%d’ expects type ‘int’ , 但参数 4 的类型为 ‘size_t’

r - 如何在不影响绘图点数的情况下修改 x 轴级别?

反转 R 中的数字