Подтвердить что ты не робот

Матрица фильтра по значению столбца

У меня есть эта матрица:

   02, 04, 06, 08, 10, 2
   07, 14, 21, 28, 35, 2
   11, 22, 33, 44, 55, 0
   15, 14, 21, 28, 35, 2

Я хотел бы иметь одну и ту же матрицу, но только с строками с последним column = 2. Поэтому я хочу эту матрицу:

   02, 04, 06, 08, 10, 2
   07, 14, 21, 28, 35, 2
   15, 14, 21, 28, 35, 2

Я мог бы анализировать всю матрицу, но есть ли другой способ?

Изменить

Чтобы быть более точным, у меня есть массив ячеек со строками:

   02, 04, Some String, 08, 10, 2
   07, 14, Some String1, 28, 35, 2
   11, 22, Some String1, 44, 55, 0
   15, 14, Some String, 28, 35, 2
4b9b3361

Ответ 1

Просто используйте логическую индексацию в строках вашей матрицы:

row_idx = (A(:, end) == 2);

Теперь row_idx содержит логический массив 1 и 0 s, с 1, где последний элемент строки равен 2.

Теперь отфильтруйте эти строки с помощью

A_filtered = A(row_idx, :);

Все эти шаги обычно выполняются в одном слое:

A_filtered = A(A(:, end) == 2, :);