您好,欢迎来到本关于 Numpy cumsum的教程。在本教程中,我们将学习 NumPy cumsum()
方法,并看到很多相关示例。那么让我们开始吧!
什么是 NumPy cumsum?
累积和是给定序列的部分和的序列。如果{a, b, c, d, e, f,…..}是一个序列,则其累积和表示为{a, a+b, a+b+c, a+b+c+d,… .} .
NumPy 中的方法cumsum()
返回输入数组沿指定轴的元素的累积和。它可以是展平数组的累积和、数组元素沿行的累积和或数组元素沿列的累积和。
我们将在本教程的后续部分中看到每个示例的示例。
NumPy cumsum 的语法
numpy.cumsum(a, axis = None , dtype = None , out = None ) |
范围 | 描述 | 必需/可选 |
A | 输入数组。 | 必需的 |
轴 | 计算数组累积和的轴。它可以是axis=0(即沿列)或axis=1(即沿行)或axis=None(这意味着要返回展平数组的累积和)。 | 选修的 |
dtype(数据类型) | 要返回的数组的数据类型。 | 选修的 |
出去 | 用于放置结果的替代输出数组。它必须具有与预期输出相同的形状和长度。 | 选修的 |
返回:
包含输出的新数组。如果提到了out,则返回对其的引用。
例子
现在让我们开始使用 numpy.cumsum 方法,以便我们可以理解输出。
单个元素的累计和
import numpy as np a = 5 ans = np.cumsum(a) print ( "a =" , a) print ( "Cumulative sum =" , ans) |
输出:
a = 5 Cumulative sum = [5] |
空数组的 Numpy 累积和
import numpy as np a = [] ans = np.cumsum(a) print ( "a =" , a) print ( "Cumulative sum =" , ans) |
输出:
a = [] Cumulative sum = [] |
一维数组的 Numpy 累积和
import numpy as np a = [ 5 , 3 , 2 , 8 ] ans = np.cumsum(a) print ( "a =" , a) print ( "Cumulative sum of the array =" , ans) |
输出:
a = [5, 3, 2, 8] Cumulative sum of the array = [ 5 8 10 18] |
此处,累积和计算为 5、5+3、5+3+2、5+3+2+8,结果为 5、8、10、18。
Numpy 二维数组的累积和
import numpy as np a = [[ 4 , 3 ], [ 9 , 10 ]] ans = np.cumsum(a) print ( "a =" , a) print ( "Cumulative sum of the array =" , ans) |
输出:
a = [[4, 3], [9, 10]] Cumulative sum of the array = [ 4 7 16 26] |
对于二维数组,当没有提到轴时,首先将数组展平,然后计算其累积和。
在上面的例子中,数组首先被展平为 [4, 3, 9, 10],即逐行,然后其累积和计算为 [4, 4+3, 4+3+9, 4+3+9 +10] 产生函数返回的数组 [4, 7, 16, 26]。
将数组的 Numpy.cumsum() 返回为 float 数据类型
这与上面的示例相同,只是这里返回的值是浮点数据类型。
import numpy as np a = [ 5 , 3 , 2 , 8 ] ans = np.cumsum(a, dtype = float ) print ( "a =" , a) print ( "Cumulative sum of the array =" , ans) |
输出:
a = [5, 3, 2, 8] Cumulative sum of the array = [ 5. 8. 10. 18.] |
沿轴的累积和
轴 = 0
import numpy as np a = [[ 1 , 5 , 3 ], [ 7 , 10 , 4 ]] # cumulative sum along axis=0 ans = np.cumsum(a, axis = 0 ) print ( "a =\n" , a) print ( "Cumulative sum of the array =\n" , ans) |
输出:
a = [[1, 5, 3], [7, 10, 4]] Cumulative sum of the array = [[ 1 5 3] [ 8 15 7]] |
此处,第一行保持原样,第二行包含按 1+7、5+10 和 3+4 计算得出的累积和,结果为 8、15 和 7。
轴 = 1
import numpy as np a = [[ 1 , 5 , 3 ], [ 7 , 10 , 4 ]] # cumulative sum along axis=1 ans = np.cumsum(a, axis = 1 ) print ( "a =\n" , a) print ( "Cumulative sum of the array =\n" , ans) |
输出:
a = [[1, 5, 3], [7, 10, 4]] Cumulative sum of the array = [[ 1 6 9] [ 7 17 21]] |
此处,第一列保持原样,第二列包含按 1+5, 7+10 计算得出的累积和,结果为 6, 17,第三列包含累积和 1+5+3, 7+10+ 4即9和21。
概括
就这样!在本教程中,我们了解了 Numpy cumsum 方法,并使用该方法练习了不同类型的示例。