У меня есть данные netcdf, которые маскируются. Данные в (время, широта, долгота). Я хотел бы создать массив с тем же размером, что и исходные данные, но с нулями, когда данные маскируются, и с теми, где они не маскируются. Поэтому я попытался сделать эту функцию:
def find_unmasked_values(data):
empty = np.ones((len(data),len(data[0]),len(data[0,0])))
for k in range(0,len(data[0,0]),1): # third coordinate
for j in range(0,len(data[0]),1): # second coordinate
for i in range(0,len(data),1): # first coordinate
if ma.is_mask(data[i,j,k]) is True:
empty[i,j,k] = 0
return(empty)
Но это возвращает только массив с единицами и без нулей, если в данных есть замаскированные значения. Если у вас есть предложения по повышению эффективности кода, я также был бы очень рад. Спасибо,