第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

更改 python 中 netcdf 變量的單位

更改 python 中 netcdf 變量的單位

當(dāng)年話下 2023-12-20 20:05:31
我在Python中有一個netCDF文件,其中時間變量的單位是days_since_Jan11900包無法讀取的xarray。它拋出錯誤unable to decode time units 'days_since_Jan11900' with 'the default calendar'. Try opening your dataset with decode_times=False or installing cftime if it is not installed.我不想使用decode_times,只是將其更改為days_since_0. 這是自 0000 年 1 月 1 日以來的天數(shù)。如何將 netCDF 中的單位更改為可讀的單位?<class 'netCDF4._netCDF4.Variable'>float64 days(time)    units: days_since_Jan11900    long_name: calendar_daysunlimited dimensions: current shape = (87600,)filling on, default _FillValue of 9.969209968386869e+36 used
查看完整描述

2 回答

?
明月笑刀無情

TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超4個贊

按照我的要求,我自己用 Python 解決了這個問題,而不是通過 cdo。這是我的做法,非常簡單:


ds['days'] = ds.days - 730966

ds.days.attrs['units'] = 'days since 1860-01-01'

ds.to_netcdf(path + 'name_of_file.nc')

這730966是我在數(shù)組中的起始值days,因此我減去了它并將我的單位更改為適當(dāng)?shù)膯挝?,在我的例子中days since 1860-01-01。


查看完整回答
反對 回復(fù) 2023-12-20
?
汪汪一只貓

TA貢獻(xiàn)1898條經(jīng)驗(yàn) 獲得超8個贊

如果您使用的是 Unix,您可以嘗試使用 CDO 更改日歷。以下內(nèi)容應(yīng)該可以解決您的問題:

cdo -L  -setreftime,0001-01-01  -settaxis,0001-01-01,0:00:00,1day  -setcalendar,standard infile.nc outfile.nc

我已將時間設(shè)置為第 1 年,因?yàn)槲艺J(rèn)為任何有效日歷中都不存在第 0 年。


查看完整回答
反對 回復(fù) 2023-12-20
  • 2 回答
  • 0 關(guān)注
  • 317 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號