И NumPy, как для перебора столбцов массива?
предположим, что у меня есть и M x N массив. Я хочу передать каждый столбец этого массива в функцию для выполнения некоторой операции над всем столбцом. Как выполнить итерацию по столбцам массива?
например, у меня есть массив 4 x 3, как
1 99 2
2 14 5
3 12 7
4 43 1
for column in array:
some_function(column)
где столбец будет " 1,2,3,4 "в первой итерации," 99,14,12,43 "во второй и" 2,5,7,1 " в третьей.
4 ответов:
Это должно дать вам начать
>>> for col in range(arr.shape[1]): some_function(arr[:,col]) [1 2 3 4] [99 14 12 43] [2 5 7 1]
для трехмерного массива вы можете попробовать:
для c в массиве.транспонировать(1, 0, 2): do_stuff (c)
посмотреть документы о том, как массив.транспонировать строительство. В основном вы указываете, какое измерение нужно сдвинуть. В этом случае мы перемещаем второе измерение (например, столбцы) в первое измерение.
Comments