Если вы не используете numpy, вы можете отфильтровать столбцы с помощью zip () в пределах понимания списка:
Filtered = [ [v for v,m in zip(row, MaskTable) if m] for row in Table ]
Если вы используете numpy, ваша таблица и маска должны быть numpy возражений:
import numpy as np
Table = np.array([[True, False, False, False, False],
[False, False, True, False, False],
[True, False, False, True, False]])
MaskTable = np.array([True, False, True, True, False])
Filtered = Table[:,MaskTable]
Выше приведен ответ на ваш вопрос, сформулированный в заголовке.
Тем не менее, ваш пример вывода показывает, что вы на самом деле пытаетесь сделать это примените отношение ИЛИ по столбцам в вашей матрице:
MaskTable = np.any(Table,axis=0)
или
MakTable = np.logical_or.reduce(Table,axis=0)