python numpy学习笔记

#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
posted @ 2021-01-06 18:37  小乔流水懒羊羊  阅读(95)  评论(0编辑  收藏  举报