一个基于python的扩展库
提供高维数组对象ndarray,运算速度碾压python List
提供了各种高级数据编程工具,如矩阵运算、向量运算、快速筛选、IO操作、傅里叶变换、线性代数、随机数等
ndarray属性
ndim:维度shape:形状(各维度的长度)size:总长度dtype:元素类型
display:输出内容和类型(建议使用)
print:强制输出
output:Ipython默认输出
强制类型统一
numpy设计初衷是用于运算的,所以对数据类型进行统一优化
注意:
numpy默认ndarray的所有元素的类型是相同的如果传进来的列表中包含不同的类型,则统一为同一类型,优先级:str>float>int
输出如果是dtype('
type(xxx) # 查看xxx对象本身的类型
xxxx.dtype # 查看xxx内部的元素类型,由于ndarray的元素类型是强制统一的,所以只返回一个类型
Numpy的常规函数
np一般是为我们提供的一个ndarray(矩阵)
# 建立一个值为1的数组
1) np.ones(shape, dtype=None, order='C')
shape: 形状,使用元组表示 dtype:表示元素类型 order:表示排序或
# 建立一个值为0的数组
2) np.zeros(shape, dtype=float, order='C')
# 建立一个自己指定数的数组
3) np.full(shape, fill_value, dtype=None, order='C')
fill_value:自己指定一个数为建立数组的值
# 建立一个单位矩阵
4) np.eye(N, M=None, k=0, dtype=float)
N:表示建立矩阵的阶级 M:表示列数 k:表示对角线偏移(-1或1)
# 建立一个等差数列(指定个数)
5) np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)
start:表示起始值 stop:表示终值 num:数据个数 endpoint:表示是否需要最后一个值
# 建立一个等差数列(指定步长)
6) np.arange([start, ]stop[, step, ],dtype=None,*,like=None)
step:表示步长
# 使用随机数组成一个高维数组
7) np.random.randint(low, high=None, size=None, dtype='l')
low:最小值 hogh:最大值 size:尺寸规模(几行几列)
8) 正态分布函数
np.random.randn(d0, d1, ..., dn) 标准正态分布 np.random.normal(loc=0.0, scale=1.0, size=None) 普通正态分布
loc:期望值 scale:标准方差
# 生成0到1的浮点型随机数组,左闭右开
9) np.random.random(size=None)
# 生成随机索引
10) np.random.permutation(10)
# 随机种子,添加一个种子x,x不变的到的随机数就不变
11)np.random.seed(x)



