0

我有一个 numpy 数组

>>> clf_prob.dtype()

array([[ 0.05811791,  0.06526527,  0.06024136, ...,  0.06972481],
       [ 0.06093686,  0.06357167,  0.06462331, ...,  0.06999094],
       [ 0.08188396,  0.08504034,  0.0820972 , ...,  0.08487802],
       [ 0.05197106,  0.0786195 ,  0.15669477, ...,  0.0893244]])

我正在尝试添加这些数组的元素,这样我的输出将是:

[[0.05811791 + 0.06526527 + 0.06024136 +...+ 0.06972481],
[0.06093686 + 0.06357167 + 0.06462331 +...+0.06999094],
[0.08188396 + 0.08504034 + 0.0820972 + ...+  0.08487802],
[0.05197106 + 0.0786195  + 0.15669477+ ...+ 0.0893244]]

我试着做

sum(map(sum, clf_prob))

这并没有给我想要的输出。有什么建议吗?

4

3 回答 3

2

你可以做

clf_prob.sum(axis=1)

这将在某个轴上取总和,在这种情况下为行。

于 2017-05-30T06:13:08.317 回答
0

另一种可能性是使用 numpy: 的 ufunc:
np.sum.reduce(clf_prob)
它将在第一个轴上给出总和。您还可以使用该axis参数对另一个轴求和。

于 2019-03-20T18:33:36.717 回答
0

numpy.sum()在您的预期轴(1)上应该在您的情况下完成这项工作

于 2017-05-30T06:13:24.563 回答