微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何重新标记xarry DataArray?

如何解决如何重新标记xarry DataArray?

我有一个看起来像这样的DataArray:

<xarray.DataArray (rows: 3,cols: 3)>
array([[11,12,13],[21,22,23],[31,32,33]])
Coordinates:
  * rows     (rows) <U5 'row1' 'row2' 'row3'
  * cols     (cols) <U4 'col1' 'col2' 'col3'

如何更改标签获取

<xarray.DataArray (rows: 3,33]])
Coordinates:
  * rows     (rows) <U5 'rowA' 'rowB' 'rowC'
  * cols     (cols) <U4 'col1' 'col2' 'col3'

我尝试使用test.rename({"row1":"rowA","row2":"rowB","row3":"rowC"}),但它给了我ValueValue:

ValueError: cannot rename 'row1' because it is not a variable or dimension in this dataset

我认为重命名仅用于标注名称,但如果是这种情况,那么文档根本不会明确

解决方法

这可能是当前最简单的方法。目前,这还不如熊猫提供的选项好,我们有兴趣使其变得更简单。特别是,我们非常欢迎公关人员根据您的反馈使文档更加清晰。

In [8]: da = xr.DataArray([1,2,3],coords=dict(a=list('xyz')),dims=['a'])
    
In [10]: da
Out[10]:
<xarray.DataArray (a: 3)>
array([1,3])
Coordinates:
  * a        (a) <U1 'x' 'y' 'z'

In [9]: da.to_dataset('a').rename(x='x2').to_array('a')
Out[9]:
<xarray.DataArray (a: 3)>
array([1,3])
Coordinates:
  * a        (a) <U2 'x2' 'y' 'z'

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。