月份乘以天数怎么算
How multiply month by the number of days
我需要将每个月的数据乘以相应月份的天数。数据为月平均降水量,乘以天数就是累计降水量。我想要一个 pythonic 的方式来做到这一点(可能是 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
我需要将每个月的数据乘以相应月份的天数。数据为月平均降水量,乘以天数就是累计降水量。我想要一个 pythonic 的方式来做到这一点(可能是 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