使用NetCDF4在Python中写入时间NetCDF文件

问题描述

我正在尝试使用Netcdf4库编写一个netcdf文件。我的netcdf文件具有时间,纬度,经度和值变量。时间是每月的(即从1/1/2000到12/1/2000的12个时间值)。

我无法在netcdf中写入时间变量,我的代码如下:

// Comment below code. It will not needed.
//if (totalSeconds <= 0) {
//  setTimeout(this.submitMyAnswer,3000);
//} else {
//  setTimeout(setTime,1000);
//}

// assign return value from setInterval to object
// pass this.submitMyAnswer function as parameter so it can be invoked when totalSeconds become 0,Note : Do not use () as this.submitMyAnswer()
var interval = setInterval(setTime,1000,this.submitMyAnswer);

// get callback function submitMyAnswer in parameter to invoke when time elapsed.
function setTime(submitMyAnswer) {
  --totalSeconds;
  secondsLabel.innerHTML = pad(totalSeconds % 60);
  minutesLabel.innerHTML = pad(parseInt(totalSeconds / 60));
  localStorage.setItem("totalSeconds",totalSeconds);

  // clear interval once totalSeconds is 0
  if (totalSeconds <= 0) {
    clearInterval(interval);

    // call submitMyAnswer() once totalSeconds become 0.
    // do not use this.submitMyAnswer(),simply use submitMyAnswer()
    submitMyAnswer();
  }
}

这样做,我得到以下错误import netCDF4 as nc dsn = nc.Dataset(filename,'w',format='NETCDF4') time = dsn.createDimension("time",None) latd = dsn.createDimension("lat",len(lat)) lond = dsn.createDimension("lon",len(lon)) timev = dsn.createVariable("time",'f4',('time',)) latv = dsn.createVariable("lat",('lat',)) lonv = dsn.createVariable("lon",'f 4',('lon',)) value = dsn.createVariable("irr_req",'lat','lon',)) value.units = 'mm/month' latv[:] = np.array(lat) ## lat is an array with length 296 and lon witg 690 lonv[:] = np.array(lon) ## I am using relativedelta to write the monthly time data because I do not kNow another method- from dateutil.relativedelta import * time =[datetime.datetime(2000,1,1) + relativedelta(months = month) for month in range(12)] timev[:] = nc.date2num(time,"months since 2000-01-01 00:00",calendar='360_day')

如何编写时间值?我也可以写几个月的1到12的整数而不是datetime变量。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...