numpy.cumsum()详解:计算数组累积和的Python函数及其应用

numpy.cumsum() 是 Python 库 numpy 中的一个函数,用于计算数组(或特定轴上的数组)元素的累积和。以下是该函数的基本用法、参数说明及功能概述:

函数签名与基本用法

numpy.cumsum(a, axis=None, dtype=None, out=None)

参数详解

  • a (ndarray): 输入数组。要计算累积和的 numpy 数组或任何可以被转换为 numpy 数组的可迭代对象。
  • axis (int, optional): 累积方向。指定沿哪个轴进行累积和计算。如果为 None(默认值),则对扁平化后的数组进行累积和计算,即返回一维数组。如果指定一个非负整数 axis,则对 a 沿该轴进行累积和计算。例如,对于二维数组,axis=0 表示按列累积,axis=1 表示按行累积。
  • dtype (data-type, optional): 数据类型。指定计算累积和时使用的数据类型。如果不指定,则使用与输入数组 a 相同的类型。注意,如果指定的类型不能准确表示累积和结果,可能会导致精度损失。
  • out (ndarray, optional): 输出数组。如果提供,累积和的结果将存储在这个已存在的数组中。它必须具有正确的形状和 dtype 以接收结果。如果其大小不足以容纳结果,将会引发错误。

返回值

  • numpy.cumsum() 返回一个新的 numpy.ndarray 对象,其内容是输入数组 a 沿指定轴(或扁平化后)的元素累积和。数组的形状与原数组相同,只是相应轴的尺寸保持不变,而其他维度上的元素变为累积和。

示例

import numpy as np

# 创建一个一维数组
arr1d = np.array([1, 2, 3, 4, 5])
cumulative_sum_1d = np.cumsum(arr1d)
print(cumulative_sum_1d)

# 输出:[1 3 6 10 15]

# 创建一个二维数组
arr2d = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
cumulative_sum_rows = np.cumsum(arr2d, axis=1)
cumulative_sum_cols = np.cumsum(arr2d, axis=0)
print("Cumulative sum along rows:")
print(cumulative_sum_rows)
print("Cumulative sum along columns:")
print(cumulative_sum_cols)

# 输出类似:
# Cumulative sum along rows:
# [[ 1  3  6]
#  [ 4  9 15]
#  [ 7 15 24]]
# Cumulative sum along columns:
# [[ 1  2  3]
#  [ 5  7  9]
#  [12 15 18]]

综上所述,numpy.cumsum() 用于计算数组元素的累积和,支持一维到多维数组,并允许用户指定累积的方向(轴)。它常用于数据分析、信号处理、统计计算等领域,便于快速获得数组中连续元素的累计值。


存档地址:https://www.yuque.com/worthstudy/study/tcg5q3xavfn25d2g?singleDoc# 《numpy.cumsum()函数》

© 版权声明
THE END
喜欢就点赞支持一下吧,如果觉得不错或日后有所需要,可以收藏文章和关注作者哦。
点赞0打赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容