0
我有一个三维网格数据集:lat,lon和time。使用xarray为网格中的每个点获得时间总和
<xarray.Dataset>
Dimensions: (lat: 185, lon: 155, time: 8760)
Coordinates:
* lon (lon) float64 -76.98 -76.92 -76.86 -76.8 -76.74 ...
* lat (lat) float64 33.55 33.6 33.66 33.71 33.76 33.82 ...
* time (time) datetime64[ns] 2010-01-01 2010-01 01T01:00:00.028800 ...
Data variables:
u (time, lat, lon) float64 nan nan nan nan nan nan nan nan ...
v (time, lat, lon) float64 nan nan nan nan nan nan nan nan ...
u_err (time, lat, lon) float64 nan nan nan nan nan nan nan nan ...
v_err (time, lat, lon) float64 nan nan nan nan nan nan nan nan ...
我想通过时间来获得所有u和v的意思,我可以通过以下操作:
ds_seasonal = ds.groupby('time.season').mean('time')
不过,我只想要得到的数据集的平均对于存在50%或更多时间数据的每个网格点。
在MATLAB中,我会把所有东西放到一个结构化数组中,它就像nans=sum(~isnan(u),3);
一样简单,然后我将它与4335或50%的时间维度进行比较。
我只是在学习如何使用xarray进行计算。这是可能的xarray?