Как правильно замаскировать двумерный массив?
Скажем, у меня есть двумерный массив координат, который выглядит как
x = array([[1,2],[2,3],[3,4]])
Ранее в своей работе я создал маску, которая в итоге выглядела как
mask = [False,False,True]
Когда я пытаюсь использовать эту маску для 2D координатного вектора, я получаю сообщение об ошибке
newX = np.ma.compressed(np.ma.masked_array(x,mask))
>>>numpy.ma.core.MaskError: Mask and data not compatible: data size
is 6, mask size is 3.`
что имеет смысл, я полагаю. Поэтому я попытался вместо этого просто использовать следующую маску:
mask2 = np.column_stack((mask,mask))
newX = np.ma.compressed(np.ma.masked_array(x,mask2))
И то, что я получаю, близко:
>>>array([1,2,2,3])
к тому, что я ожидал (и хочу):
>>>array([[1,2],[2,3]])
Должен быть более простой способ сделать это?