"用 numpy 和 pandas 把玩你的数据"的笔记
什么是学习笔记?
你在学习中想写的批注、摘抄及随感。
使用协议与隐私政策
感谢您使用网易云课堂!
为了更好地保障您的个人权益,请认真阅读《使用协议》、《隐私政策》和《服务条款》的全部内容,同意并接受全部条款后开始使用我们的产品和服务。若不同意,将无法使用我们的产品和服务。
同意
用 numpy 和 pandas 把玩你的数据, import numpy sa np#把numpy模块导入进python,并简写为np
np.arange(3,15,1)#创建从3-14的数列,步长为1
A = np.array([1,2,3],[2,3,4])#生成矩阵
print(A.ndim)#查看矩阵A的维度(以最低的那维为准)
print(A.shape)#查看矩阵A的形状
print(A.size)#查看矩阵A的元素个数
a = np.array([10,20,30,40])
b = np.arange(4) #[0 1 2 3]
c = b**2 #b的2次方
d = np.sin(a) #a的对应元素取sin
print(b<3) #[Ture Ture Ture False]
a = np.array([[1,1],[0,1]])
b = np.arange(4).reshape((2,2))#把数列转换为2行2列的矩阵
c = a*b #对应元素相乘
c_dot = np.dot(a,b)#矩阵的乘法
a = np.random.random((2,4))#生成随机矩阵(2行4列)
print(np.sum(a))#求和
print(np.min(a,axis=0))#在每行中找最小值
print(np.max(a,axis=1))#在每列中找最大值
A = np.arange(2,14).reshape((2,4))
print(np.argmin(A))#找最小值索引
print(np.average(A))#求A的平均值
print(np.median(A))#找A的中位数
print(np.cumsum(A))#逐步累加
print(np.diff(A))#每两个元素之间的差
print(np.nonzero(A))#输出非零元素的行和列的位置
print(np.sort(A))#逐行排序
print(np.transpose(A))#矩阵转置
print(A.T)#矩阵转置
print(np.clip(A,5,9))#小于5的数全部变5,大于9的数全部变9
A = np.arange(3,15).reshape(3,3)
print(A[2][1])#第2行1列的数
print(A[2,:])#第2行所有数
print(A[1,1:3])#第1行,1-2列的数
print(A.flatten())#把A矩阵压平,变成只有一行
print(A.flat)#同上
for row in A:
print(row)#迭代每一行的数
A = np.array([1,1,1])
B = np.array([2,2,2])
C = np.vstack((A,B)) #vertical stack(上下合并)
D = np.hstack((A,B))#horizontal stack(左右合并)
print(A.shape,B.shape)
A[:,np.newaxis]#相当于数列的转置
np.concatenate((A,B,A,B),axis=0)#指定维度合并(1列,0行)
A = np.arange(12).reshape((3,4))
print(A)
print(np.split(A,2,axis=1))#对列等量分割成两块
print(np.array_split(A,3,axis))#(不等量分割)
print(np.vsplit(A,3))#纵向分割
print(np.hsplit(a,2))#横向分割
b = a #a和b完完全全关联起来,等价
b = a.copy()#只是把a的值给b,a和b不关联