Numpy | ndarray数组基本操作

搞不懂博客园表格的排版。。。

说明:

0 ndarray :多维数组对象

1 np :import numpy as np

2 nda :表示数组的名称

1 生成数组

函数名 描述
np.array 将输入的数据转换为ndarray,默认复制所有的输入数据(深拷贝)
np.asarray 将输入转换为ndarray,如果输入已经是ndarray则不再复制(浅拷贝)
np.arange

1 使用Python的内置函数range,返回一个数组

2 创建等差数组 — 指定步长  (start,stop, step, dtype)

np.linspace 创建等差数组 — 指定数量  (start, stop, num, endpoint)
np.logspace 创建等比数列  (start,stop, num)
np.full 根据给定形状和数据类型生成指定数值的数组
np.full_like 生成与给定数组形状一致,但内容是指定数值的数组
np.random.randn  产生的随机数组服从正态分布
np.random.normal (loc, scale, size) 按照size的形状返回均值为loc,标准差为scale的正态分布数组
random.standard_normal (size) 生成size形状的标准正态分布数组
np.random.rand 产生的随机数组服从均匀分布
np.random.uniform (low, high, size)均匀分布的数组
np.random.randint (lowhigh=Nonesize=Nonedtype='l')从一个均匀分布中随机采样,生成一个整数或N维整数数组

2 ndarray 的属性

属性名 属性解释(返回)
ndarray.shape 数组形状(元组)
ndarray.ndim 数组维数
ndarray.size 数组中所有元素的数量
ndarray.itemsize 一个数组元素的长度(字节)
ndarray.dtype 数组元素的类型

3 索引与切片

3.1 索引:从 0 计数

3.2 切片:对象[:, :] -- 先行后列

  区别于 Python 的 list ,数组的切片是直接改动原数组,这意味着数据并不被复制,如果想要一份数组切片的拷贝,需要先复制这个数组,如 arr[5:7].copy()

4 修改数组

方法 描述
nda.reshape(shape, order) 返回一个具有相同数据域,但shape不一样的视图(相当于只进行数据重新划分)。行、列不进行互换,新产生一个ndarray
nda.resize(new_shape) 修改数组本身的形状(需要保持元素个数前后相同),行、列不进行互换,修改原来的ndarray
nda.T 数组转置
nda.astype(type) 返回修改了类型之后的数组
nda.tostring() 转化为字符串
np.unique(对象) 数组去重

5 ndarray 运算

分类 符号或函数 描述
逻辑运算 > , <, ==  
通用判断函数 np.all() 是否全部...
np.any() 是否有...
三元运算 np.where(条件,符合返回,不符合返回)  
基础统计方法 np.min(adn, axis) 最小
np.max(adn, axis) 最大
np.median(adn, axis) 中位数
np.mean(adn, axis) 平均数
np.std(adn, axis) 标准差
np.var(adn, axis) 样本方差
np.argmax(axis) 最大元素对应的下标
np.argmin(axis) 最小元素对应的下标
cumsum 从零开始元素累计和
cumprod 从零开始元素累计积

猜你喜欢

转载自www.cnblogs.com/ykit/p/12362422.html