2015-07-13 1 views
1

Учитывая два Numpy маски массива, созданные с 3-го и 4-го столбцов данных из 7 колонок всего:Как получить логическое или двух Numpy масок с Python

exp_mask = np.repeat(data[:,2]>7., data.shape[1]) 
loggf_mask = np.repeat(data[:,3]<-7., data.shape[1]) 

Как маскировать данные, которые замаскированы либо exp_mask или loggf_mask?

Логика, что я пытаюсь описать это:

mask = exp_mask or loggf_mask 
+0

'numpy.logical_or' – mdurant

ответ

1

Вы можете использовать np.any() для оценки булевы или маски:

mask = np.any([exp_mask,loggf_mask],axis=0) 
2

Я считаю, что вы ищете побитовое или, что есть.

1

Вы можете использовать либо bitwise_or, который также имеет стенографию |, или logical_or. Оба будут работать, так как ваш массив будет иметь тип bool:

mask = exp_mask | loggf_mask 
Смежные вопросы