簡體   English   中英

在 netCDF4 Python 中使用 date2num 轉換日期時間時出錯

[英]Error converting datetime using date2num in netCDF4 Python

我正在嘗試在 Python 中使用 netCDF4 編寫 netcdf 文件。 為此,我正在創建一個時間變量。 我使用datetime創建了時間數據。 當我嘗試使用date2num將日期時間數據轉換為 netcdf 格式時出現錯誤。

dates=[datetime.datetime(1996,1,1) + relativedelta(months=mon) for mon in range(120)]

上面的命令給了我看起來像的日期列表 -

[datetime.datetime(1996, 1, 1, 0, 0),
 datetime.datetime(1996, 2, 1, 0, 0),
 datetime.datetime(1996, 3, 1, 0, 0),
 datetime.datetime(1996, 4, 1, 0, 0),
 datetime.datetime(1996, 5, 1, 0, 0),
 ...
 datetime.datetime(2005, 10, 1, 0, 0),
 datetime.datetime(2005, 11, 1, 0, 0),
 datetime.datetime(2005, 12, 1, 0, 0)]

我正在使用以下命令將日期轉換為 netCDF4 日期:

dates_nc=nc.date2num(dates,time.units)

這里time.unitssince 1991-01-01 1991-01-01 開始的(我不確定 time.units 是如何工作的)

nc.date2num命令給出以下錯誤:

ValueError                                Traceback (most recent call last)
cftime\_cftime.pyx in cftime._cftime._datesplit()

ValueError: need more than 2 values to unpack

During handling of the above exception, another exception occurred:

ValueError                                Traceback (most recent call last)
<ipython-input-154-97a05959ce3c> in <module>
----> 1 dates_nc=nc.date2num(dates,time.units)

cftime\_cftime.pyx in cftime._cftime.date2num()

cftime\_cftime.pyx in cftime._cftime._dateparse()

cftime\_cftime.pyx in cftime._cftime._datesplit()

ValueError: Incorrectly formatted CF date-time unit_string

錯誤的原因可能是什么?

您需要添加時間單位示例: days since 1991-01-01

可以是天、小時、分鍾、秒、毫秒或微秒。 https://unidata.github.io/cftime/api.html#cftime.date2num

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM