Я пытаюсь выбрать конкретные столбцы в строке матрицы numpy. Я после хорошего способа решить следующую проблему.
Предположим, что у меня есть следующая матрица, которую я бы назвал X
[1, 2, 3]
[4, 5, 6]
[7, 8, 9]
У меня также есть список индексов столбцов на каждую строку, которую я бы назвал Y
[1, 0, 2]
Мне нужно получить значения
[2]
[4]
[9]
Вместо списка с индексами Y я также могу создать матрицу с той же формой, что и X, где каждый столбец является bool/(int в диапазоне 0-1 значение, указывающее, является ли это требуемым столбцом.
[0, 1, 0]
[1, 0, 0]
[0, 0, 1]
Я знаю, что это можно сделать с помощью итерации по массиву и выбора значений столбца, которые мне нужны, однако мне было интересно, есть ли лучшее решение. Это будет выполняться часто на больших массивах данных, и поэтому я должен работать как можно быстрее.
Спасибо