查看库的版本:
np.__version__
创建数组:
np.zeros(shape = (3,3))
np.ones(shape = (3,3))
np.full(shape = (4,4,4),fill_value = 3.14)
np.eye(5)#单位矩阵E
np.linespace(0,100,num = 51)#0,100之间取51个数等差数列
np.arange(0,100,3)#0开始,差为3的等差数列,小于等于100
np.random.randint(0,100,10)#0,100间10个随机整数
np.random.randn(4,5,)#4x5的标准正态分布矩阵
#np.random.normal(loc = 0.0,scale = 1.0, size = None)三个参数:均值,标准差,生成数量
其他的一些函数以及聚合函数:
#x.round(2)保留两位小数
#矩阵转置
np.transpose(data,axes = (1,0,2))#一二维度换
#数据的级联,切分
np.concatenate([data1,data2],axis = 1)#axis在第2维拼接
np.hstack((data1,data2))#水平级联horizotal stack
#np.random.random(size)0,1之间随机数
np.vstack((data1,data2))#垂直级联vertical
#切分
np.vsplit(data,2)#2是切割的位置
np.hsplit(data,2)
#副本
data2 = data1 #data2与data1占用同一内存
data2 = copy(data1)#data2,data1占用不同内存
#所有聚合函数用法(求样本的一个统计量)
data.sum(axis = n)#对第n轴求和,max,prod等函数同理
'''
np.sum() 求和
np.min() 最小值
np.max() 最大值
np.prod() 乘积
np.mean() 平均值
np.median() 中位数
np.percentile() 百分位数
np.var() 方差
np.std() 标准差
np.argmax()最大值的索引
np.argmin()最小值的索引
np.argwhere((data>50)&(data<100))data中大于50小于100的数的索引,
用法类似sql中的where
'''
sum与nansum的区别:array中有空值nan时用nansum其他函数同理
看轴n是多少的方法:np.random.randint(0,10,(2,2,2,2))
从最前面的括号就开始数,看他属于哪个括号就是第几个轴
Out[4]:
array([[[[1, 4],
[7, 0]],
[[3, 7],
[8, 0]]],
[[[7, 9],
[9, 2]],
[[0, 6],
[2, 8]]]])
data.reval()#数据拉成一维数据
两个::进行切片
data[::2],data[::-1]
如果是高维数据:
data.[,,::2]#对第三维度进行切片
关于图像处理:
假如一张图片的尺寸:image_data.shape = [1000,1000,3]长宽色彩
第三维度顺序:红绿蓝,想把图片变成绿色系或蓝色系,image_data[:,:,[1,0,2]]或image_data[:,:,[2,0,1]]
变成灰度图:image_data[:,:,0]
马赛克效果:
plt.imshow(image_data[::-10,::-10])