3 x 3 numpy 배열이 주어지면
a = numpy.arange(0,27,3).reshape(3,3)
# array([[ 0, 3, 6],
# [ 9, 12, 15],
# [18, 21, 24]])
2 차원 배열의 행을 정규화하기 위해 생각했습니다.
row_sums = a.sum(axis=1) # array([ 9, 36, 63])
new_matrix = numpy.zeros((3,3))
for i, (row, row_sum) in enumerate(zip(a, row_sums)):
new_matrix[i,:] = row / row_sum
더 나은 방법이 있겠죠?
아마도 정리할 수 있습니다. 정규화하면 행당 항목의 합계가 1이어야합니다. 그러나 나는 그것이 대부분의 사람들에게 분명 할 것이라고 생각합니다.