#encoding=utf-8 import numpy as np from numpy.linalg import * def main(): ###多行注释就一个组合键:选中,Ctrl+/ ##lesson1:ndarray # lst=[[1,3,5],[2,4,6]] # print(type(lst)) # np_list=np.array(lst) # print(type(np_list)) # np_list2=np.array(lst,dtype=np.float) # print(np_list2.shape)##2行3列 # print(np_list2.ndim)##2维 # print(np_list2.dtype)##数据类型float64 # print(np_list2.itemsize)##64位8个字节 # print(np_list2.size)##共6个元素 ##lesson2:常用array # print(np.zeros([2,4]))##2行3列都为0的数组 # print(np.ones([3,5]))###3行5列都为1的数组 # print("Rand:")#随机数 # print(np.random.rand(2,4))##2行4列的随机数 # print(np.random.rand())##1个随机数 # print("RandInt:")#整型随机数 # print(np.random.randint(1,10))##1到10范围内的一个随机整数 # print(np.random.randint(1,10,3))###1到10范围内的3个随机数 # print("Randn:")#标准正态分布随机数 # print(np.random.randn(2,4))#2行4列正态分布随机数 # print("Choice:") # print(np.random.choice([10,20,30,1,3]))#从10,20,30,1,3中随机选择一个数 # print("Distribute:") # print(np.random.beta(1,10,100))#从1到10生成100个符合贝塔分布的随机数 ##lesson3:numpy常用操作 # print(np.arange(1,11))#生成一个【1,11)的数组 # print(np.arange(1,11).reshape([2,5]))#生成一个2行5列的【1,11)的数组 # print(np.arange(1,11).reshape([2,-1])) # reshape二帝第二个参数缺省-1也可以 # print(np.exp(1))#e的1次方 # print(np.exp2(3))#自然指数3的平方 # print(np.sqrt(4))#4的开方 # print(np.sin(3.14))#sinx # print(np.log10(10))#lg10 # lst=np.array([[[1,2,3],[2,4,6]],[[1,2,3],[2,4,6]]]) # print(lst.sum())#所有元素求和 # print(lst.sum(axis=0))#最上层对应相加[[1+1,2+2,3+3],[2+2,4+4,6+6]] # print(lst.sum(axis=1))#更深入一层相加[1+2,2+4,3+6],[1+2,2+4,3+6] # print(lst.max(axis=0)) # print(lst.min(axis=1)) # lst1=np.array([10,20,30,40]) # lst2=np.array([1,2,3,4]) # print(lst1+lst2)#两个数组相加 # print(lst1-lst2)#两个数组相减 # print(lst1*lst2)#两个数组相乘 # print(lst1/lst2)#两个数组相除 # print(lst1**2)#数组平方 # print(np.dot(lst1.reshape([2,2]),lst2.reshape([2,2])))#两个矩阵点乘 # print(np.concatenate((lst1,lst2),axis=0))#数组拼接成列 # print(np.vstack((lst1,lst2)))#数组上下拼接成行 # print(np.hstack((lst1,lst2)))#数组拼接成列 # print(np.split(lst1,2))#数组拆分 # print(np.copy(lst1))#数组拷贝 ##lesson4:矩阵操作和线性方程组 #from numpy.linalg import *#引入一个包 # print(np.eye(3))#单位矩阵 # lst=np.array([[1,2],[3,4]]) # print("Inv") # print(inv(lst))#矩阵的逆 # print("T:") # print(lst.transpose())#矩阵的转置 # print("Det:") # print(det(lst))#矩阵的行列式 # # print(eig(lst))#特征值和特征向量 # # y=np.array([[5.],[7.]]) # print("Solve") # print(solve(lst,y))#lst*x=y,求矩阵x ##lesson5 numpy其他应用 # print("FFT:")#信号处理领域 # print(np.fft.fft(np.array([1,1,1,1,1,1,1,1]))) # # print("Coef:")#相关系数运算 # print(np.corrcoef([1,0,1],[0,2,1]))#corrcoef得到相关系数矩阵(向量的相似程度) # # print("Poly:")#一元多次函数 # print(np.poly1d([2,1,3,7])) # print(np.poly1d([2,1,3,7],True)) if __name__ == '__main__': main()###只需要敲出main