我需要将每个月的数据乘以相应月份的天数。数据是平均每月降水量,乘以天数将得出累积的降水量。我想用Python的方式来做到这一点(也许是xarray或pandas)。我的代码如下:
#!/usr/bin/env python3.6
import xarray as xr
ncfile = 'https://www.esrl.noaa.gov/psd/thredds/dodsC/' \
'Datasets/cmap/std/precip.mon.mean.nc'
with xr.open_dataset(ncfile, autoclose=True) as dset:
lat = dset['lat']
lon = dset['lon']
precip = dset['precip']
print(precip)
例如:
来自数据的前三个月是:1979-01-01、1979-02-01、1979-03-01,因此:
print(precip[0:3, 10, 10].values)
[ 0.81 0.76999998 0.70999998]
0.81 * 31
0.76999998 * 28
0.70999998 * 31
最佳答案
您可以使用daysinmonth
(或别名days_in_month
)属性:
precip_month = precip * precip.time.dt.daysinmonth