我要按天减少xarray数据集
new_dataset = dataset.groupby('time.day').first()
我期望time
的尺寸值类似于
array([ '2016-09-03T23:21:19.500000000', '2016-09-10T23:12:58.500000000', '2016-10-03T23:20:13.500000000'], dtype='datetime64[ns]')
但是在名为days
的维下接收整数值
array([ 1, 2 ])
保留此分组xarray的维度类型对于将其用作现有工作流的直接操作很重要。此外,沿着天轴从此xarray采样的点的时间序列图将不会保留天在时域中最初彼此之间的间隔。
是否有一种简单的方法或将日期映射到datetime64对象的xarrays?还是应该独立地将原始数据集的时间坐标分组并分别重新映射?
答案 0 :(得分:0)
dataset.groupby('time.day').first()
按月中的天(即2016年1月1日,2016年2月1日,2016年3月1日,...,2019年12月1日)分组数据全部分组在一起。输出将是最多31个元素的数组。 first
操作通过获取组的第一个成员来减少这些组。
我怀疑这不是您想要执行的操作,并且您正在尝试获取每个日历日的第一个数据点。在这种情况下,请使用dataset.resample(time='D').first()
。