将DataArray转换为numpy数组
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将DataArray转换为numpy数组相关的知识,希望对你有一定的参考价值。
我有一个DataArray,我想转换为一个numpy数组。作为参考,它是包含(时间,纬度,经度)的三维网格化数据集。我尝试过使用xarray.DataArray.values(),但收到错误:TypeError:'property'对象不可调用。
我想将它转换为一个numpy数组,因为我正在使用一个利用重塑功能的函数,并且无法与DataArray一起正常工作。我尝试使用np.array()简单地将其转换为numpy数组,但它将每个值转换为NaN。
datatlt=xr.open_dataset("/nfs/home11/staff/lzhou/Public/Satellite_data/RSS_Tb_Anom_Maps_ch_TLT_V4_0.nc", decode_times=False)
tlt=datatlt['brightness_temperature'].sel(months=slice(121,492))
tlt2=np.ma.masked_invalid(tlt)
tlt2=xr.DataArray.values(tlt2)
答案
DataArray.values
是一个property。属性不可调用。相反,您只需访问numpy数组,就好像它是DataArray的属性一样。
tlt2 = tlt.values
如果你想要一个蒙面数组,你需要调用to_masked_array
method:
tlt2 = tlt.to_masked_array()
以上是关于将DataArray转换为numpy数组的主要内容,如果未能解决你的问题,请参考以下文章