这是我参与11月更文挑战的第17天,活动详情查看:2021最后一次更文挑战
NumPy-快速上手
数组的创建
NumPy的特点是其N维数组对象ndarray。
ndarray是一系列同类型数据的集合。
ndarray对象用于存放同类型元素的多维数组。
1 | python复制代码import numpy as np |
创建区间数组
arange参数(初始值,结束值,步长) 不包含结束值
1 | python复制代码import numpy as np |
创建二维数组
ndim 维度
shape 行数和列数
size 元素个数
1 | python复制代码import numpy as np |
指定每个维度的长度
ones为生成全1数组
1 | python复制代码import numpy as np |
数组属性
数组对象的常用属性有:ndim、shape、dtype、size和itemsize。
ndim用来返回数组的维度
shape用来返回数组的形状
dtype用来返回数组的数据类型
size用来返回数组中元素的个数
itemsize用来返回数组中每个元素占用的空间大小(以字节为单位)
1 | python复制代码import numpy as np |
数据类型
在创建数组时,可以使用dtype来指定数组中元素的类型。
没有指定元素的类型,则会根据元素类型进行推断。
若元素的类型不同,则会选择一种兼容的类型。
1 | python复制代码import numpy as np |
astype( )进行类型转换
1 | python复制代码import numpy as np |
reshape( )方法改变数组的形状。
1 | python复制代码import numpy as np |
设置多维
维度-1表示自动计算该维度的大小
1 | python复制代码import numpy as np |
索引与切片
选取多个元素
1 | python复制代码import numpy as np |
切片返回的是原数组对象的视图
1 | python复制代码import numpy as np |
如果希望数组能够实现真正的复制 copy( )返回数组的副本
1 | python复制代码import numpy as np |
条件索引
1 | python复制代码import numpy as np |
数组扁平化
ravel( )返回的是原数组的视图
flatten( )返回的是原数组的副本
1 | python复制代码import numpy as np |
存储顺序
order参数来指定数组元素的存储顺序
1 | python复制代码import numpy as np |
函数
统计
当数组是二维数组时,axis=0按照竖直的方向进行统计, axis=1按照水平的方向进行统计
1 | python复制代码import numpy as np |
常用的统计函数如下有:
①mean( )/sum( )/median( )。平均值/合/中位数
②max( )/min( )/amax( )/amin( )。最大值/最小值/最大值/最小值
③argmax( )/argmin( )/std( )/var( )。最大值的索引/最小值的索引/标准差/方差
④cumsum( )/cumprod( )。累加/累积
随机
常用的随机函数有:
①np.random.rand( )
②np.random.random( )
③np.random.randn( )
④np.random.normal( ) 高斯分布的概率密度函数
⑤np.random.randint( ) 随机整型数
⑥np.random.seed( ) 随机数种子
⑦np.random.shuffle( ) 随机排列
⑧np.random.uniform( ) 随机采样
1 | python复制代码import numpy as np |
连接
concatenate( )对多个数组按指定轴的方向进行连接
1 | python复制代码import numpy as np |
其他
any( ):如果数组中有任何一个元素为True(或者能转换为True),则返回True,否则返回False。
all( ):如果数组中所有元素为True(或者能转换为True),则返回True,否则返回False。
transpose(T)函数在不指定参数时,默认是矩阵转置。
指定参数transpose((0,1))表示按照原坐标轴改变序列,也就是保持不变。
transpose((1,0))表示交换0轴和1轴。
1 | python复制代码import numpy as np |
本文转载自: 掘金