gpt4 book ai didi

Python:努力掩盖数据集的一部分

转载 作者:行者123 更新时间:2023-11-28 17:06:02 24 4
gpt4 key购买 nike

我确信有一个简单的修复方法,我是 Python 的新手,可以在一分钟内在 Matlab 中完成。

我正在尝试为海洋数据屏蔽某个纬度和经度框。

我可以为纬度和经度创建 bool 蒙版图。这给了我 101 个纬度乘以 131 个经度(来自全局数据集 181 x 361)。但无法弄清楚如何以相同的方式屏蔽我的 2d 数据集,以便我可以将其绘制在 pcolormesh 图上。

基本上,我的形状不正确。如何屏蔽我的数据集(与 lat x lon 的原始形状相同)以便子集与我的 lats/longs 具有相同的形状,以便可以绘制所选区域?

lat_mask=[(lat<=50)&(lat>=-50)]   #boolean for lat area
lat_masked=lat[lat_mask] #the lat subset i want

lon_mask=[(lon>=-120)&(lon<=70)]
lon_masked=lon[lon_mask]

#Mask the Dataset - Error here. How I imagine it should work but does not

data_masked=data[lat_mask,long_mask] #this is how i would do it in matlab but not even close

#something like this works a bit better but is still not functional
lam,lom= np.meshgrid(lat_mask,lon_mask)
data_masked = np.ma.array(data,mask=lom)

#plot
plt.pcolormesh(lom,lam,data)

感谢您的宝贵时间。

最佳答案

如果 data 是一个 numpy 数组,那么下面的脚本应该可以解决您的问题

m, n = data.shape
data_masked = data[np.arange(m)[lat_mask][:, None], np.arange(n)[long_mask]]

关于Python:努力掩盖数据集的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50943597/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com