欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python笔记--numpy总结(2)

程序员文章站 2024-01-24 19:36:40
Python笔记--numpy总结(2) #12,strptime&&&&& import datetime,date...

Python笔记--numpy总结(2)

    #12,strptime&&&&&
    import datetime,date
    ----------------------------------------------------------
    #13,tuple和数组转换成字符串
    tuple=(1,2,3)
    tuple[len(tuple)-1]
    tuple[-1]
    print(9.99.__repr__())
    print(str(9.99))
    #上面的示例中tuple是一个元组,访问元素的时候可以通过[index]的方式访问,
    #访问到最后一个元素时,可以通过[-1];
    #那么访问到倒数第二个元素时可一个通过[-2];
    #数字转换成字符串有两种方式:
    #__repr__()
    #str()
    ----------------------------------------------------------
    #14,transpose和.T
    aa=[[1],[2],[3]]
    aa=np.mat(aa) #将列表变成矩阵,存放在aa
    aa
    aa.transpose() #将矩阵进行转置,aa并没有改变
    print('*'*20)
    aa.T      #T转置,也没发生改变
    ----------------------------------------------------------
    #15,zeros()和ones()
    np.zeros((2,1))
    np.ones((2,3))
    #zeros返回指定行列的全零矩阵
    #ones返回指定行列的全一的矩阵
    ----------------------------------------------------------
    #16,列表 数组 linspace
    # 列表与数组的区别
        #列表:[1,2,3,4]
        #数组: [1 2 3 4]
    ll=[1,2,3,4]
    arr=np.array(ll)
    arr
    np.linspace(0,3,6)#返回0到3之间的6个数字且间隔均匀
    ----------------------------------------------------------
    #17,argsort排序索引
    ary=np.array(np.zeros(4))
    ary[0]=0.1
    ary[1]=0.4
    ary[2]=0.3
    ary[3]=0.7
    sortindex=np.argsort(ary)
    for id in sortindex:
        print('索引:',id)
    for id in sortindex:
         print('索引:', id,'值:',ary[id])
    for i in ary:
        print(i)
    sortindex=np.argsort(-ary)#有负号,降序排列,无负号,升序排列
    for id in sortindex:
        print('索引:',id)
    for id in sortindex:
         print('索引:', id,'值:',ary[id])
    ----------------------------------------------------------
    #18,[:,:]矩阵元素切片
    ll=[[1,2,3],[4,5,6],[7,8,9]]
    np.mat(ll)[2,0]#第一个冒号代表获取行的起止行号#第二个冒号代表获取列的起止行号
    np.mat(ll)[:,:]
    ----------------------------------------------------------
    #19,diag构建对角矩阵
    dd=[1,2,3]
    dilogg=np.diag(dd)
    dilogg
    ----------------------------------------------------------
    #20,linalg.inv和.I求逆矩阵
    dd=[1,2,3]
    dilogg=np.diag(dd)
    dilogg
    np.linalg.inv(dilogg)
    np.mat(dilogg).I
    ----------------------------------------------------------
    #21,dot矩阵点积
    ll=[[1,2,3],[4,5,6],[7,8,9]]
    ld=np.dot(ll,ll)
    ld
    np.mat(ll)*np.mat(ll)
    ----------------------------------------------------------
    #22,eye单元矩阵
    np.eye(3)
    np.eye(3,3)
    ----------------------------------------------------------
    #23,eig矩阵的特征值和特征向量
    A=np.mat([[1,0,0,0,2],[0,0,3,0,0],[0,0,0,0,0],[0,4,0,0,0]])
    U=A*A.T
    lamda,hu=np.linalg.eig(U)
    hu
    lamda
    ---------------------------------------------------------