📜  Python| numpy matrix.cumsum()(1)

📅  最后修改于: 2023-12-03 15:04:20.470000             🧑  作者: Mango

Python | Numpy matrix.cumsum()

在Python中,使用NumPy库的 matrix.cumsum() 函数可以返回一个数组的元素的累积和。它将数组中每个元素与之前的元素相加,将结果存储在一个新的数组中。

语法
numpy.matrix.cumsum(arr, axis=None, dtype=None, out=None)

参数

  • arr: numpy数组
  • axis: 可选参数,指定沿哪个轴累加。
  • dtype: 累加时的数据类型。
  • out: 可选参数,输出数组。
示例
import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
cum_sum = arr.cumsum()

print("原数组:")
print(arr)

print("累积和数组:")
print(cum_sum)

输出:

原数组:
[[1 2 3]
 [4 5 6]
 [7 8 9]]
累积和数组:
[ 1  3  6 10 15 21 28 36 45]

在特定轴上进行累加操作

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
cum_sum = arr.cumsum(axis=1)

print("原数组:")
print(arr)

print("沿行累积和数组:")
print(cum_sum)

输出:

原数组:
[[1 2 3]
 [4 5 6]
 [7 8 9]]
沿行累积和数组:
[[ 1  3  6]
 [ 4  9 15]
 [ 7 15 24]]

输出的数组类型

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
cum_sum = arr.cumsum(dtype=float)

print("原数组:")
print(arr)

print("累积和数组:")
print(cum_sum)

输出:

原数组:
[[1 2 3]
 [4 5 6]
 [7 8 9]]
累积和数组:
[ 1.  3.  6. 10. 15. 21. 28. 36. 45.]

以输出数组的形式返回结果

import numpy as np

arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
cum_sum = np.cumsum(arr, axis=1, out=np.array([[10, 10, 10], [20, 20, 20], [30, 30, 30]]))

print("原数组:")
print(arr)

print("沿行累积和数组:")
print(cum_sum)

输出:

原数组:
[[1 2 3]
 [4 5 6]
 [7 8 9]]
沿行累积和数组:
[[11 13 16]
 [24 29 35]
 [37 45 54]]

以上是关于matrix.cumsum() 的介绍和示例。