* np.zeros(shape=[],dtype=)
* np.ones(shape=[],dtype=)
* np.empty 随机初始值
* np.ones\_like(array)
* np.empty\_like(array)
* np.zeros\_like(array)
import numpy as np
a1 = np.zeros((3,3),dtype = np.float32)
a2 = np.zeros\_like(a1)
a3 = np.ones((3,3),dtype = np.float32)
a4 = np.ones\_like(a3)
a5 = np.empty\_like(a4)
#构造随机矩阵
a1 = np.random.rand(3,3) #随机构造一个3x3 的矩阵
a2 = np.random.rand(3,3)
a3 = np.random.randint(10,size = (3,3)) #返回随机整数
a4 = np.random.randint(10,size = (3,3))
#随机高斯均值
mu,sigma = 0,0.1
norm\_array = np.random.normal(mu,sigma,10)
norm\_array
#洗牌
np.random.shuffle(norm\_array)
norm\_array
#随机种子
np.random.seed(100)
* 推荐保存成.npy 即矩阵文件,可以直接load 不用做其它处理
* 对ndarray 来说,里面的每个元素必须是同一类型的,如果不是的话,会自动的向高精度进行转换
* 数组填充 fill()
* 赋值:
* 直接用等号赋值的话,两个array 指向同一个内存地址,因此一个array 改变会影响另一个;
* 如果不想有上述的效果,则用copy 来复制
np.save('norm\_array.npy', norm\_array)
norm\_array2 = np.load('norm\_array.npy')
norm\_array2
array2 = array+1 #broadcast, array 中每个数值都进行加1 操作
array3.dtype
array3.itemsize
array3.size #总共有多少个元素
array3.fill(0)
array3.ndim #显示维度
arr = array3.copy()
arr[1,2] = 1
arr #arr 变化
array3 #array3 没变
grade = np.arange(0,100,10)
mask = np.array([0,0,0,0,1,1,1,1,1,1],dtype = bool) #0,1 转成bool 类型
#mask 作用再数组上,=True 保留
grade[mask]
#根据条件,找到索引
np.where(grade>50)
#数值运算
sum\_array = np.array([[1,2,3],[4,5,6]])
np.sum(sum\_array,axis=0) #沿着哪个轴进行相加
np.sum(sum\_array,axis=1)
#找索引位置,例如最小值的索引、最大值的索引 , 也可以指定轴
sum\_array.argmin()
sum\_array.argmax()
排序
li = [random.randint(0,9) for \_ in range(21)]
array = np.array(li)
array = np.reshape(array,[3,7])
np.sort(array,axis=1)
#生成某个范围均匀分布的n 元素数组
array = np.linspace(0,9,11) #start,stop,num
#增加一个维度
array.shape #一个一维数组
array1 = array[np.newaxis,:] #可以在前面增加一个维度,也可以在后面增加一个维度
array1.shape
array2 = array[:,np.newaxis]
array2.shape
#压缩多余的轴
array3 = array2.squeeze()
array3.shape
#转置:
array4 = np.linspace(1,10,10)
array4.shape = 2,5
array4.T
array4
#数组连接: concat
array5 = np.linspace(10,20,10)
array5.shape = 2,5
array6 = np.concatenate((array4,array5),axis = 0)
array6.shape
#拉长操作,打平array,回到1维数组
array7 = array6.flatten()
array7.shape
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。