首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >两个变量的groupby_bins?

两个变量的groupby_bins?
EN

Stack Overflow用户
提问于 2016-11-07 12:18:11
回答 1查看 2K关注 0票数 3

假设我有一个包含4124个度量的数组nl。每一个都与一个(latlon)耦合相关联,它们指定测量发生的位置。这些地点不是网格化的,即它们与定期间隔的值不对齐。

代码语言:javascript
复制
In [51]: whos
Variable   Type         Data/Info
---------------------------------
lat        ndarray      4124: 4124 elems, type `float32`, 16496 bytes
lon        ndarray      4124: 4124 elems, type `float32`, 16496 bytes
nl         ndarray      4124: 4124 elems, type `int16`, 8248 bytes

我为nl创建了一个nl,将latlon指定为坐标:

代码语言:javascript
复制
nl = xr.DataArray(nl, coords={'lon':(['time'], lon), 'lat':(['time'], lat)}, dims=['time'])

例如,我知道我可以将这些值分组在经度或纬度的垃圾箱中,以便对它们进行操作。

代码语言:javascript
复制
nl_avg_lon = nl.groupby_bins('lon', np.r_[-180:190:10]).mean()
nl_avg_lat = nl.groupby_bins('lat', np.r_[-90:90:10]).mean()

我想要做的是在经度x纬度的2D垃圾箱中分组值,这样我就可以将结果显示为一张地图。我不认为groupby_bins能做到这一点,还有别的解决方案吗?

用示例更新

这就是我想要做的事情:

代码语言:javascript
复制
latbins = np.r_[-90:100:10]
lonbins = np.r_[-180:190:10]
nsamples, xx, yy = np.histogram2d(lon, lat, bins=(lonbins, latbins))
nl_sum, xx, yy = np.histogram2d(lon, lat, bins=(lonbins, latbins), weights=nl)
nl_avg = nl_sum / nsamples

我希望避免使用numpy来保持xarray与dash的集成。

EN

回答 1

Stack Overflow用户

发布于 2016-11-10 09:23:54

这里,当我把剑杆卫星数据绑定成纬向和垂直的方式时,你可以把自己稍微放大一点。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40465026

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档