首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python-xarray:如何将多个3D数组组合成一个6维的DataArray?

Python-xarray:如何将多个3D数组组合成一个6维的DataArray?
EN

Stack Overflow用户
提问于 2021-03-03 22:29:02
回答 1查看 61关注 0票数 1

我已经读取了12个波段(月)的80个栅格geotif文件,并生成了80个3D DataArrays (因此,我可以通过clip_box对它们进行裁剪,以便绘制我的项目区域的80个地图)。

现在我需要将它们组合成一个单一的DataArray,但沿着3个维度(气候模型,气候变化情景和时间段)。我的目标是计算统计数据,并沿着4个不同的维度绘制地图。

我应该把重点放在什么功能上来做到这一点?3个组合函数之一(concat,merge,combine_nested)?

EN

回答 1

Stack Overflow用户

发布于 2021-03-25 00:17:51

我发现沿着multiples dimension合并multiples dataArrays的唯一方法是:

  • 首先创建一个包含所有请求的维度和坐标列表(并设置空间维度)的空dataArray da_to

代码语言:javascript
复制
dims= ('dim1', 'dim2', ...) 
array= np.empty((len(coord1_list), len(coord2_list), ...) 
da_tot= xr.DataArray(data= array, dims= dims, coords={'coord1': coord1_list, 'coord2': coord2_list, ..., 'lon': lon_list, 'lat': lat_list) 
da_tot.rio.set_spatial_dims(x_dim= 'lon', y_dim= 'lat', inplace= True)

然后,

  • 通过为每个dataArray da指定其坐标

来添加该坐标

da_tot.loc[dict(coord1= 'xxxx', coord2= 'yyyy', ....)]= da

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

https://stackoverflow.com/questions/66459046

复制
相关文章

相似问题

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