所以,我有随机生成的矩阵。我的主要任务是创建一个链接矩阵。
[[0, 0, 1, 0, 0]
[1, 0, 1, 1, 0]
[0, 0, 0, 1, 1]
[1, 0, 1, 0, 0]
[1, 1, 0, 0, 0]]
现在,我想遍历每个列的含义,对于索引 0 处的第 1 列,我取列中 1 的数量,即 3,并将列中的每个元素除以数字 1 - 3。然后我最终会
0
1/3
0
1/3
1/3
我想要实现的输出是:
[0, 0, 1/3, 0, 0],
[1/3, 0, 1/3, 1/2, 0],
[0, 0, 0, 1/2, 1],
[1/3, 0, 1/3, 0, 0],
[1/3, 1, 0, 0, 0]
python 中是否有自动计算的函数?
答案 0 :(得分:1)
对 axis=0
求和,然后将数组除以该轴上的和数组:
>>> array/array.sum(axis=0)
Out[198]:
array([[0. , 0. , 0.33333333, 0. , 0. ],
[0.33333333, 0. , 0.33333333, 0.5 , 0. ],
[0. , 0. , 0. , 0.5 , 1. ],
[0.33333333, 0. , 0.33333333, 0. , 0. ],
[0.33333333, 1. , 0. , 0. , 0. ]])