numpy函数总结

numpy是python中常用的库

import numpy as np

1、numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None, axis=0)

–>返回指定区域内的均匀分布的数字,默认包含端点。
–>endpoint默认stop是最后一个点,选择为False是不包含。
–>如果retstep是True,返回 (samples, step),step是间隔。

numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None, axis=0)
Return evenly spaced numbers over a specified interval. #返回指定区间内间隔均匀的数字
Returns num evenly spaced samples, calculated over the interval [start, stop]. #返回num个间隔均匀的样本,计算间隔[开始,停止]
The endpoint of the interval can optionally be excluded. #区间的端点可以选择排除

-->np.linspace(2.0, 3.0, num=5)
array([2.  , 2.25, 2.5 , 2.75, 3.  ])
-->np.linspace(2.0, 3.0, num=5, endpoint=False)
array([2. ,  2.2,  2.4,  2.6,  2.8])
-->np.linspace(2.0, 3.0, num=5, retstep=True)
(array([2.  ,  2.25,  2.5 ,  2.75,  3.  ]), 0.25)

2、numpy.digitize(x, bins, right=False)

返回输入数组x中每个值对应bins的索引,right表示是否包含右边边界(左右边界只有一个包含,因此可以通过一个参数控制左右边界)
Return the indices of the bins to which each value in input array belongs.
注意!这个索引不是对应值,而是一个区间

bins是上升数组时:
right=False —> bins[i-1] <= x < bins[i]
right=True —> bins[i-1] < x <= bins[i]
bins是下降数组时:
right=False —> bins[i-1] > x >= bins[i]
right=True —> bins[i-1] >= x > bins[i]

x = np.array([0.2, 6.4, 3.0, 1.6])
bins = np.array([0.0, 1.0, 2.5, 4.0, 10.0])
inds = np.digitize(x, bins)
inds
array([1, 4, 3, 2])

3、np.array()

创建数组

a = np.array([2,3,4])
b = np.array([2.0,3.0,4.0])
c = np.array([[1.0,2.0],[3.0,4.0]])
d = np.array([[1,2],[3,4]],dtype=complex) # 指定数据类型
print a, a.dtype
print b, b.dtype
print c, c.dtype
print d, d.dtype

[2 3 4] int32
[ 2.  3.  4.] float64
[[ 1.  2.]
 [ 3.  4.]] float64
[[ 1.+0.j  2.+0.j]
 [ 3.+0.j  4.+0.j]] complex128

shape[0]读取矩阵第一维度的长度

.shape可以快速读取矩阵的形状

4、np.squeeze(tmp_ts)

从数组的形状中删除单维度条目,即把shape中为1的维度去掉

numpy.squeeze(a,axis = None)
1)a表示输入的数组;
2)axis用于指定需要删除的维度,但是指定的维度必须为单维度,否则将会报错;
3)axis的取值可为None 或 int 或 tuple of ints, 可选。若axis为空,则删除所有单维度的条目;
4)返回值:数组
5) 不会修改原数组;

np.squeeze()函数可以删除数组形状中的单维度条目,即把shape中为1的维度去掉,但是对非单维的维度不起作用。
在这里插入图片描述

在这里插入图片描述

5、增加维度

增加某一维度,只需要加入None即可

>>> a = np.array([2,3,4])
>>> a.shape   
(3,)
>>> a = a[:,None] 
>>> a.shape 
(3,1)
>>> a
array([[2],
       [3],
       [4]])

6、data_path[-1]

data_path[-1]表示最后一位

7、np.prod函数

numpy.prod(a, axis=None, dtype=None, out=None, keepdims=<class ‘numpy._globals._NoValue’>)
返回给定轴上的数组元素的乘积。
在这里插入图片描述

### Numpy常用函数总结 #### 数组创建 `numpy.array()` 是最基础的用于创建数组的方法。它接受列表或其他序列类型的输入并将其转换为 ndarray 对象[^1]。 ```python import numpy as np arr = np.array([1, 2, 3]) print(arr) ``` 除了 `array()` 方法外,还有其他一些方法可用于快速生成特定结构的数组: - `np.zeros(shape)` 创建指定形状的零矩阵。 - `np.ones(shape)` 创建全一矩阵。 - `np.empty(shape)` 返回未初始化的数据。 - `np.arange(start, stop, step)` 类似于内置的 range 函数,但返回的是 ndarray。 - `np.linspace(start, stop, num=50)` 在指定范围内均匀分布一定数量的样本点。 #### 数据类型与属性 NumPy 支持多种数据类型 (dtype),可以通过 `.dtype` 属性查看当前数组的数据类型;通过 `.shape`, `.ndim`, 和 `.size` 获取数组维度、维数以及总元素数目等基本信息。 #### 数学运算 Numpy 提供了大量的数学功能,包括但不限于三角函数 (`sin`, `cos`)、指数对数(`exp`, `log`) 等基本算术操作可以直接作用在整个数组上而无需显式循环。 例如计算平方根: ```python sqrt_arr = np.sqrt(np.array([4, 9])) print(sqrt_arr) # 输出 [2. 3.] ``` 另外提到过可以用 `numpy.dot()` 或者 @ 运算符来进行向量间的点乘操作。 #### 统计分析 统计相关的函数有最大最小值查找(`max`, `min`), 平均值(`mean`), 方差标准差(`std`, `var`)等等。 示例找出二维数组每列的最大值: ```python col_maxes = np.max([[1, 2], [3, 4]], axis=0) print(col_maxes) # 结果应该是 array([3, 4]) ``` #### 文件读写 保存加载文本或二进制文件也很方便,比如使用 `save/load` 处理 .npy/.npz 格式的压缩存档。 --- ### 关联概念补充说明 Python 的垃圾回收机制采用 **引用计数** 来跟踪内存中的对象状态,在某些场景下可能会因为隐含的对象共享而导致预期之外的行为发生,因此理解其工作原理有助于调试复杂应用环境下的资源泄漏等问题[^3]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值