numpy
numpy
- ndarray 数据
用来表示矩阵,并非数学意义矩阵
默认所有的元素类型必须相同 - display()
用来展示数据
常用方法
np.ones(shape, dtype=None, order=”C”)
1 | #全是1的ndarray |
np.zeros(shape, dtype=None, order=”C”)
1 | #全是0的ndarray |
np.full(shape, fill_value, dtype=None, order=”C”)
1 | #使用指定的指去填充ndarray |
np.eye(N, M=None, k=0, dtype=float)
1 | #产生对角线上为1其他位置为0 ndarray,是单位矩阵 |
np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)
1 | # 把一个范围的线段等分为n分 |
np.arange((start, ]stop, [step,]dtype=None)
1 | # 与range一样,区别步长不支持小数且出来的数据是不连续的 |
np.random.randint(ow, high=None, size=None, dtype=”I”)
1 | # 生产随机矩阵 |
np.random.randn(d0, d1,…, dn)
1 | #标准正太分布 |
np.random.random(size=None)
1 | #生产0到1的随机数,左闭右开 |
np.random.normal(loc=0.0, scale=1.0,size=None)
1 | #正太分布(高斯分布) |
np.random.rand(d0, dl,…,dn)
1 | #生产0到1的随机数,左闭右开 |
ndarray 的属性
1.索引
一维与列表一致,多为同理
1 | n = np.random.randint(0,100,size=(3,4,3)) |
2.切片
一维与列表一致,多为同理
1 | n = np.random.randint(0,100,size=(3,4,3)) |
3.变形
使用reshape函数,注意参数是一个元组
1 | n = np.random.randint(0,100,size=(4,5)) |
4.级联
1.np.concatenate() 级联需要注意 ‘:’
级联的参数必须是list,一定要加中括号或小括号
维度必须相同
形状相符
**级联的方向默认是shape这个tuple的第一个值所代表的维度方向
可以通过axis 参数改变级联的方向
1 | n = np.random.randint(0,100,size=(4,5)) |
2.np.hstack()与np.vstack()
水平级联与垂直级联,处理自己,进行维度变更
1 | # 垂直级联 |
5.ndarray 的排序
十大经典排序算法(动图演示)
1.快速排序
np.sort()与ndarray.sort()都可以
np.sort()不改变输入
ndarray.sort() 本地处理,不占用控件但改变输入