Numpy基础操作:
导入numpy
import numpy as np
创建数组的三种方法
np.arange()
np.array(range())
np.array([1,2,3])
数组转化成m行n列式的操作
#将数组转化成m行n列式
(数组名).reshape()
创建随机数组以及多维数组展开
round(random.random(),4) for i in range(10)]
结果:[0.0349, 0.6438, 0.8058, 0.6239, 0.0203, 0.574, 0.4434, 0.6817, 0.6639, 0.5308]
(末尾有0会省略)
(数组名).flatten()
转置函数
t7=np.arange(6).reshape(2,3)
print(t7)
结果:[[0 1 2]
[3 4 5]]
t7=t7.transpose()
print(t7)
结果:[ [0 3]
[1 4]
[2 5]]
选取行列
#选取单列
(数组名)[:,4(填单个数字)]
#选取特定多列
(数组名).[:,[1,2,4](填列表)]
选取连续多列
(数组名).[:,3:]
#选取单行
(数组名).[1,:]
#选取特定多行
(数组名).[[1,3,5],:]
#选取连续多行
(数组名).[:,1:,]#从第二行开始连续取行
# 取特定位置的点
(数组名).[[1,3,7],[2,3,5]]#表示取(1,2),(3,3),(7,5)位置的点
#取第一行第一个到第五个
(数组名).[0,:4]
NaN的判断与统计
Ps:NaN!=NaN(利用此性质可以判断NaN是否存在)
#数组t1
#统计t1数组里面有多少个NaN
t1[np.isnan((数组名))]
np.count_nonzero[t1!=t1]
#将其他东西转NaN(先把数组转为浮点型)
(数组名).astype("float")
(数组名)[]=np.nan
查询行列各有多少
(数组名).shape[0]#查询行数
(数组名).shape[1]#查询列数
常用的各种函数
(数组名).sum(axis=0/1)#统计行或列的总和
(数组名).mean(axis=0/1)#统计行或列的平均值
(数组名).median(axis=0/1)#统计行或列的均值(最中间的数或最中间两个数的平均值)
(数组名).max(axis=0/1)#统计行或列的最大值
(数组名).min(axis=0/1)#统计行或列的最小值
(数组名).ptp(axis=0/1)#统计行或列的极差
(数组名).std(axis=0/1)#统计行或列的标准差(方差的平方根)
数组运算
数组相加减乘除时都是对应位置相应操作。Ps:任何数与NaN操作都是NaN
进行加减乘除操作时数组必须对齐才能操作
如图第一个跟第二,三个都可以操作,但是与第四个无法进行操作,,不可以对齐
[[1,2,3],
[5,3,4],
[2,4,8],
[2,45,7]]
和[[1],
[2], #依次与每列操作
[5],
[3]]
[[4,5,8]] #依次与每行操作
[[1,4,8],
[3,5,9],
[2,6,9]]
读取csv文件
np.loadtxt(r"文件路径")