基础总结来源:
https://www.toutiao.com/a6458488956890645005/
https://www.toutiao.com/a6350804864013271298/
数组属性方法总结
作用
1基本属性
a.dtype数组元素类型float32,uint8,...
a.shape数组形状(m,n,o,...)
a.size数组元素数
a.itemsize每个元素占字节数
a.nbytes所有元素占的字节
a.ndim数组维度
2形状相关
a.flat所有元素的迭代器
a.flatten()返回一个1维数组的复制
a.ravel()返回一个1维数组,高效
a.resize(new_size)改变形状
a.swapaxes(axis1, axis2)交换两个维度的位置
a.transpose(*axex)交换所有维度的位置
a.T转置,a.transpose()
a.squeeze()去除所有长度为1的维度
3填充复制
a.copy()返回数组的一个复制
a.fill(value)将数组的元组设置为特定值
4转化
a.tolist()将数组转化为列表
a.tostring()转换为字符串
a.astype(dtype)转化为指定类型
a.byteswap(False)转换大小字节序
a.view(type_or_dtype)生成一个使用相同内存,但使用不同的表示方法的数组
5复数
a.imag虚部
a.real实部
a.conjugate()复共轭
a.conj()复共轭(缩写)
6保存
a.dump(file)将二进制数据存在file中
a.dump()将二进制数据表示成字符串
a.tofile(fid, sep="",format="%s")格式化ASCⅡ码写入文件
7查找排序
a.nonzero()返回所有非零元素的索引
a.sort(axis=-1)沿某个轴排序
a.argsort(axis=-1)沿某个轴,返回按排序的索引
a.searchsorted(b)返回将b中元素插入a后能保持有序的索引值
8元素数学操作
a.clip(low, high)将数值限制在一定范围内
a.round(decimals=0)近似到指定精度
a.cumsum(axis=None)累加和
a.cumprod(axis=None)累乘积
9约简操作
a.sum(axis=None)求和
a.prod(axis=None)求积
a.min(axis=None)最小值
a.max(axis=None)最大值
a.argmin(axis=None)最小值索引
a.argmax(axis=None)最大值索引
a.ptp(axis=None)最大值减最小值
a.mean(axis=None)平均值
a.std(axis=None)标准差
a.var(axis=None)方差
a.any(axis=None)只要有一个不为0,返回真,逻辑或
a.all(axis=None)所有都不为0,返回真,逻辑与
案例《一》
import numpy as np
#array=np.array([[1,2],[5,2]],dtype=np.float32)
#array=np.zeros((3,4),dtype=np.int16)
#array=np.empty((3,4))
#array=np.arange(2,12,2)
#array=np.arange(12).reshape((3,4))
#array=np.linspace(2,10,4)
#array=10*np.sin(array)
#print(array<2)
#array2=np.arange(4).reshape((2,2))
#print(np.dot(array,array2))
#随机数求和
array=np.random.random((2,4))
print(array)
#print(np.sum(array,axis=1))
#print(np.min(array,axis=0))
#print(np.max(array))
#统计
A=np.argmax(array)
B=np.argmin(array)
C=np.average(array)
D=np.median(array) #中位数
print(D)
print(np.diff(array))
print(np.nonzero(array))
print(np.sort(array))
print(np.transpose(array)) #行列转换
print(np.clip(A,5,9))
print(np.mean(array,axis=1))
案例《二》