如何在R中的netCDF文件中将信息附加到数组

拉比达布

这是我经过长时间潜伏后第一次在stackoverflow上发布的内容,因此请轻柔:)

我在R中使用大型气候数据集,该数据集分散在许多文件中,一次对这些文件进行分析。每个文件具有完全相同的数据,只是时间不同(每个文件大约6个月的数据)。对每个文件进行分析之后,我在坐标(长,纬度,高度,时间)处输出压力值的多维数组。

然后,我想将这些数组保存到一个netCDF文件中,但是由于每个文件中的数据都是相同的,但时间上是分开的,所以我最终希望将输出的数组连接到netCDF中的一个大数组中,即为每个文件添加netCDF文件中已存在的数组的新数据。

虽然我可以对第一个文件执行此分析,但是请创建netCDF文件并将数组写入其中,当我尝试将后续文件中的数据追加到netCDF文件时,它将返回

R_nc_inq_varndims中的错误:NetCDF:不是有效的ID

varndims.ncdf(nc,varid)中的错误:C调用返回错误

最初创建netCDF文件时,我使用了

t <- dim.def.ncdf("Time","Hours since January 1st 1901",seq(time[1],time[ntime],24),unlim=TRUE)
latitude <- dim.def.ncdf("Latitude","Degrees",seq(90,-90,-3))
longitude <- dim.def.ncdf("Longitude","Degrees",seq(0,359.25,3))
h <- dim.def.ncdf("Geopotential Height",'km',seq(1,30))

定义变量本身

pressvar <- var.def.ncdf("Pressure", "hPa", list(longitude,latitude,h,t), longname="Pressure at set geopotential heights", missval=-999,prec="double")

然后创建文件并添加数据

ncnew <- create.ncdf(new.name, pressvar)
starting <- c(1,1,1,1)
ending <- c(nlon, nlat, 30, ntime)
put.var.ncdf(ncnew, pressvar, pressure, start = starting,  count = ending)
close.ncdf(ncnew)

正如我所说的,一切正常。然后,我打开下一个文件,重复分析并生成压力数组,打开原始的netCDF文件,然后

put.var.ncdf(ncnew, pressvar, pressure, start = c(1,1,1,time[1]), count = c(nlon,nlat,30,time[ntime]))

从第二个文件中读取了变量time和ntime。我认为问题出在我使用开始和计数功能,或者尝试使用无限制的时间维度,甚至可能是认为这是可能的。是否需要为每个文件重新定义尺寸t和变量pressvar?还是会导致将另一个同名变量保存到netCDF文件中?如您所知,我被这个问题所困扰。

任何帮助表示赞赏。谢谢!

饼干面包师

似乎put.var.ncdf无法在NetCDF文件中找到变量。尝试将最后一行更改为:

put.var.ncdf(nc = ncnew, varid = 'Pressure', vals = pressure, start = c(1,1,1,time[1]),  count = c(nlon,nlat,30,time[ntime]))

现在,varid正确地引用NetCDF文件中的变量名,而不是引用由创建的对象var.def.ncdf

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Firefox附件中附加到文件?

来自分类Dev

如何在jQuery中将变量内容附加到div中?

来自分类Dev

如何在不覆盖R的情况下附加到R中的现有文件?

来自分类Dev

如何在C#中将RAR文件附加到电子邮件?

来自分类Dev

如何在iOS中将PDF文件附加到邮件和发送邮件

来自分类Dev

有人可以解释如何在C编程中将元素附加到数组吗?

来自分类Dev

如何在终端中将文件名中的字符附加到文件每一行的末尾?

来自分类Dev

如何在Silverstripe 3中将文件附加到数据对象

来自分类Dev

如何在Swift代码中将元组附加到数组对象?

来自分类Dev

Scala / Gatling:如何在foreach中附加到数组?

来自分类Dev

如何在JavaScript中将对象附加到数组?

来自分类Dev

如何在R中附加到文档术语矩阵?

来自分类Dev

如何在system2 R命令中将stderr和stdout输出附加到文件?

来自分类Dev

如何在Python中将文件保存到目录并将这些文件附加到列表?

来自分类Dev

如何在脚本中将缺少的YAML标头信息添加到.rmd R Markdown文件中?

来自分类Dev

如何在Qt中将json数据附加到现有的json文件中

来自分类Dev

如何在C ++中附加到文件?

来自分类Dev

如何在Python中将密钥项附加到.json文件?

来自分类Dev

如何在不覆盖R的情况下附加到R中的现有文件?

来自分类Dev

如何在javascript中将数组添加到数组中?

来自分类Dev

如何在脚本块作业中附加到文件?

来自分类Dev

如何在Java中将信息集(以用户定义的数据类型)添加到数组中

来自分类Dev

如何在PostgreSQL现有行中将整数附加到整数数组

来自分类Dev

如何在bash shell脚本中将值附加到空数组?

来自分类Dev

如何在PHP中将值附加到数组中的数组?

来自分类Dev

如何在visual basic中将整数附加到数组

来自分类Dev

如何在swift 4中将数据附加到数组类型的JSON值

来自分类Dev

如何在 SELECT 查询中将数组的第一个元素附加到自身

来自分类Dev

如何在循环中将数据附加到列表中?

Related 相关文章

  1. 1

    如何在Firefox附件中附加到文件?

  2. 2

    如何在jQuery中将变量内容附加到div中?

  3. 3

    如何在不覆盖R的情况下附加到R中的现有文件?

  4. 4

    如何在C#中将RAR文件附加到电子邮件?

  5. 5

    如何在iOS中将PDF文件附加到邮件和发送邮件

  6. 6

    有人可以解释如何在C编程中将元素附加到数组吗?

  7. 7

    如何在终端中将文件名中的字符附加到文件每一行的末尾?

  8. 8

    如何在Silverstripe 3中将文件附加到数据对象

  9. 9

    如何在Swift代码中将元组附加到数组对象?

  10. 10

    Scala / Gatling:如何在foreach中附加到数组?

  11. 11

    如何在JavaScript中将对象附加到数组?

  12. 12

    如何在R中附加到文档术语矩阵?

  13. 13

    如何在system2 R命令中将stderr和stdout输出附加到文件?

  14. 14

    如何在Python中将文件保存到目录并将这些文件附加到列表?

  15. 15

    如何在脚本中将缺少的YAML标头信息添加到.rmd R Markdown文件中?

  16. 16

    如何在Qt中将json数据附加到现有的json文件中

  17. 17

    如何在C ++中附加到文件?

  18. 18

    如何在Python中将密钥项附加到.json文件?

  19. 19

    如何在不覆盖R的情况下附加到R中的现有文件?

  20. 20

    如何在javascript中将数组添加到数组中?

  21. 21

    如何在脚本块作业中附加到文件?

  22. 22

    如何在Java中将信息集(以用户定义的数据类型)添加到数组中

  23. 23

    如何在PostgreSQL现有行中将整数附加到整数数组

  24. 24

    如何在bash shell脚本中将值附加到空数组?

  25. 25

    如何在PHP中将值附加到数组中的数组?

  26. 26

    如何在visual basic中将整数附加到数组

  27. 27

    如何在swift 4中将数据附加到数组类型的JSON值

  28. 28

    如何在 SELECT 查询中将数组的第一个元素附加到自身

  29. 29

    如何在循环中将数据附加到列表中?

热门标签

归档