将 DataArray 转换为 numpy 数组

Eli*_*sky 4 python numpy python-xarray

我有一个 DataArray,我想将其转换为 numpy 数组。作为参考,它是一个包含(时间、纬度、经度)的三维网格数据集。我尝试使用 xarray.DataArray.values(),但收到错误: TypeError: 'property' object is not callable。

我想将其转换为 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)
Run Code Online (Sandbox Code Playgroud)

jha*_*man 5

DataArray.values是一种财产。属性不可调用。相反,您只需访问 numpy 数组,就好像它是 DataArray 的属性一样。

tlt2 = tlt.values
Run Code Online (Sandbox Code Playgroud)

如果你想要一个屏蔽数组,你需要调用该to_masked_array方法

tlt2 = tlt.to_masked_array()
Run Code Online (Sandbox Code Playgroud)