假期学习总结1:Numpy基础操作

1.numpy:NumPy系统是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nested list structure)结构要高效的多(该结构也可以用来表示矩阵(matrix))。

2.基础操作:

import numpy as np
#创建数组
list_array=[1,2,3]
print(np.array([list_array,list_array]))
#创建全为0的数组
print(np.zeros(shape=(3,4)))
#创建全为1的数组
print(np.ones(shape=(3,4)))
#创建单位矩阵
print(np.eye(3,4))
#创建支持浮点数的数组
print(np.arange(1,10,0.5))
#创建不支持浮点数的数组
print(range(1,10,2))
#创建0-1的随机数
print(np.random.rand(10))
#创建10个服从标准正态分布的随机数
print(np.random.randn(10))
#创建1-10的随机数
print(np.random.randint(10))
#查看数组的维度
array_test=np.array([list_array,list_array])
print(array_test.ndim)
#查看数组的行数和列数
print(array_test.shape)
#查看数组元素的元素总个数
print(array_test.size)
#查看数组的数据类型
print(array_test.dtype)
#访问元素
b=np.array([[1,2,3],
           [4,5,6],
           [7,8,9]])
print(b[1:,1:])#得到5,68,9冒号的意思是访问第2行及以后
print(b[0:2,0:2])
#将数组转换成矩阵
c=b.reshape(3,3)
print(c)
#矩阵间的乘法
e=np.matrix(np.arange(12).reshape(3,4))
print(c.dot(e))
View Code
import numpy as np
a=np.arange(6).reshape(2,3)
b=np.arange(3).reshape(1,3)
c=np.arange(8).reshape(2,4)
#axis为0 按照垂直方向合并数组,列数相同
print(np.concatenate([a,b],axis=0))
print(np.vstack([a,b]))
#axis为1,按照水平方向合并数组,行数相同
print(np.concatenate([a,c],axis=1))
print(np.hstack([a,c]))
#数组的分割
d=np.arange(8)
print("d为:")
print(d)
print(np.split(d,[2,5]))#分成3部分0-12-4,5以后
print(np.split(d,2))#平均分成2部分
#矩阵的分割
print(np.split(c,2,axis=0))#将矩阵按照水平方向分割成2部分
print(np.split(c,2,axis=1))#将矩阵按照垂直方向分割成两部分
#求一维数组的元素和,最大值,最小值
print(np.sum(d))
print(np.min(d))
print(np.max(d))
#多维度数组聚合
print(np.sum(a,axis=0))#将a的每一列相加,axis=1将a的每一行相加
print(np.mean(a))#取整个矩阵的均值,同样可以有axis参数
#分位数
print(np.percentile(d,q=25))#d数组中25%的数小于打印出的这个数
View Code
所学时间 3个小时
博客量 1篇
代码量
所学知识 Numpy基础操作
原文地址:https://www.cnblogs.com/wangzhaojun1670/p/13456653.html