python学习之numpy中的cumsum函数、tile函数

本文介绍了Python中numpy库的cumsum和tile函数。cumsum函数用于计算数组元素的累计和,支持多维数组,例如一维、二维和三维数组的示例。tile函数则用于通过重复数组来创建新的数组,其参数reps决定了每个轴上重复的次数。这两个函数是numpy中处理数组操作的重要工具。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

cumsum函数定义:

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

  返回:沿着指定轴的元素累加和所组成的数组,其形状应与输入数组a一致

其中cumsum函数的参数:

  • a:数组
  • axis:轴索引,整型,若a为n维数组,则axis的取值范围为[0,n-1]
  • dtype:返回结果的数据类型,若不指定,则默认与a一致。
  • out:数据类型为数组。用来放置结果的替代输出数组,它必须具有与输出结果具有相同的形状和缓冲长度

代码示例:

1.对于一维数组而言:

### cumsum 函数的使用方法 `cumsum` 是一种用于计算累计和的功能,在 PythonNumPy 库中有对应的实现 `np.cumsum()`。以下是关于该函数的具体说明及其用法。 #### 基本概念 `cumsum` 表示 **Cumulative Sum**(累积求和)。对于给定的一组数据,它会返回一个新的数组,其中每个位置上的值等于原数组到当前位置为止的所有元素之和[^1]。 #### 函数语法 在 NumPy 中,`np.cumsum()` 的基本语法如下: ```python numpy.cumsum(a, axis=None, dtype=None, out=None) ``` - 参数解释: - `a`: 输入数组。 - `axis`: 计算累积和的方向,默认为 None,表示将输入展平后再计算;如果指定轴,则沿该方向进行操作。 - `dtype`: 返回数组的数据类型,如果不提供则默认与输入一致。 - `out`: 可选参数,用于存储结果的输出数组。 #### 示例代码 下面是一些具体的例子来展示如何使用 `np.cumsum()`: ##### 示例 1:一维数组的累积和 ```python import numpy as np arr = np.array([1, 2, 3, 4]) result = np.cumsum(arr) print(result) # 输出: [ 1 3 6 10] ``` 这里的结果 `[1, 3, 6, 10]` 显示的是逐项累加的过程:第 1 位保持不变 (1),第 2 位是前两项相加 (1+2=3),依此类推[^2]。 ##### 示例 2:二维数组按不同维度的累积和 当处理多维数组时,可以通过设置 `axis` 来控制沿着哪个维度执行累积求和。 ```python matrix = np.array([[1, 2], [3, 4]]) # 默认情况下,矩阵会被拉成一维再做累积和 flat_cumsum = np.cumsum(matrix) print(flat_cumsum) # 输出: [ 1 3 6 10] # 按列累积求和(axis=0) col_cumsum = np.cumsum(matrix, axis=0) print(col_cumsum) # 输出: # [[1 2] # [4 6]] # 按行累积求和(axis=1) row_cumsum = np.cumsum(matrix, axis=1) print(row_cumsum) # 输出: # [[1 3] # [3 7]] ``` 以上展示了如何针对不同的需求调整 `axis` 参数以获得所需的结果[^2]。 #### 实际应用场景 `np.cumsum()` 经常被应用于金融分析、时间序列预测等领域中的连续变量统计中,比如股票价格变化趋势图绘制或者销售业绩增长曲线生成等场景下都非常有用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值