xarray在 NumPy 多维数组中加入变量名与坐标索引
xarray 是一个开源 Python 包,它可以使处理多维数组更加简单、高效并有趣。xarray 在原始类 NumPy 多维数组中引入了标签化的变量名称和坐标索引,实现了更直观、更简洁和更加不容易出错的能力。该软件包包括一个庞大且不断增长的域无关功能库,用于使用这些数据结构进行高级分析和可视化。xarray 灵感来自同为解决数据分析任务而诞生的 pandas。
多维数组(张量)是计算科学的重要组成部分,它们涉及广泛的领域,包括物理学、天文学、地球科学、生物信息学、工程学、金融学和深度学习。在 Python 中,NumPy 提供了用于处理原始多维数组的基本数据结构和 API,但是,真实世界的数据集通常不仅仅是原始数据,它们有标签,用于编码有关数组值如何映射到空间、时间等位置的信息。所以有有了 xarray 这个项目,它在原始类 NumPy 多维数组中引入了标签化的变量名称和坐标索引,实现了更直观、更简洁和更加不容易出错的能力。
特性:
- 通过变量名操作多维数组,比如:x.sum('time')
- 通过标签而不是位置选中值:x.loc['2014-01-01'] 或 x.sel(time='2014-01-01')
- 基于维度名称而不是形状在多维数组上进行数学运算矢量化
- 灵活的 groupby split-apply-combine 操作:x.groupby('time.dayofyear').mean()
- 基于坐标标签的数据库(例如 alignment),可以平滑地处理缺失值:x, y = xr.align(x, y, join='outer')
- 以Python字典的形式跟踪任意元数据:x.attrs
评论