我有一个dataframe,它的时间索引形式为“年-月-日”,时间是不连续的;另一个dataarray为逐小时数据。我想要从dataarray中选出对应于dataframe中所有天数的小时数据。
dataframe的形式为:
dayuhi nightuhi PM2.5 pre ws Month season
date
2008-06-09 0.189091 1.825714 121.75 0.0 1.400825 6 summer
2008-06-10 -0.397273 1.002857 101.75 0.0 1.612291 6 summer
2008-06-12 0.637273 0.874286 98.25 0.0 1.348327 6 summer
dataarray的形式为:
xarray.DataArray'MM'time: 113976lat: 9lon: 7
[7180488 values with dtype=float32]
Coordinates:
time
(time)
datetime64[ns]
2008-01-01T08:00:00 ... 2021-01-...
array(['2008-01-01T08:00:00.000000000', '2008-01-01T09:00:00.000000000',
'2008-01-01T10:00:00.000000000', ..., '2021-01-01T05:00:00.000000000',
'2021-01-01T06:00:00.000000000', '2021-01-01T07:00:00.000000000'],
dtype='datetime64[ns]')
lat
(lat)
float64
41.4 41.15 40.9 ... 39.9 39.65 39.4
lon
(lon)
float64
115.7 116.0 116.2 ... 117.0 117.2
我尝试将dataframe转换为dataarray,但是生成的dataarray的时间形式为
2008-06-09T00:00:00.000000000
,根据
B_sel = da9.loc[xsumpoll.date]
命令,只选出了含有00时的数据。
请问大家有什么解决方案,非常感谢你的回答!
相似问题