我有一个 xarray DataArray,我想为整个时间序列选择四月、五月、六月(类似于 time.season=='JJA')。
其结构如下:
<xarray.DataArray 't2m' (time: 492, latitude: 81, longitude: 141)>
我之前选择JJA的方式是:
seasonal_data =temp_data.sel(time=temp_data['time.season']=='JJA')
我想做同样的事情,但用月份“AMJ”代替。我可以添加我可能遗漏的任何细节。
谢谢
选择自定义月份的最简单方法是使用布尔掩码,例如,
def is_amj(month):
return (month >= 4) & (month <= 6)
seasonal_data = temp_data.sel(time=is_amj(temp_data['time.month']))
请注意,您需要使用像
&
或 |
这样的按位运算符,因为 Python 的内置函数 and
和 or
不适用于向量。另外,您需要括号,因为按位运算符的优先级高于比较。
另一种方法是使用 isin 函数:
data = temp_data.sel(time=temp_data.time.dt.month.isin([4,5,6]))