zoukankan      html  css  js  c++  java
  • 关于numpy

    摘要:关于numpy and pandas的使用很多,最近也老用到,但是作为初学者总是模模糊糊,使用不清楚,所以就好好总结了一下,以备后用

    第一部分:numpy

    1、基础属性

      import numpy as np
      array = np.array([ [1,2,3] ,[2,3,4] ])
      print(array)
      print(array.ndim,' ',array.shape,' ',array.size) #维数,矩阵行列数,元素个数

       

      2、创建

              a = np.array( [   ]  ,dtype = np.int)

         a= np.zeros((2,3))     #创建两行三列的全0矩阵

             

              a = np.ones( (3,4),dtype = np.int )   #创建三行四列的全1矩阵

        

              a = np.arange(10,20,2)    #创建10-20,步长为2的矩阵

            

         a = np.arange(12).reshape( (3,4))    

        

         a = np.linspace(1,10,20).reshape( (4,5) )    #创建1-10,20个元素的等差数列矩阵

        

      3、运算

        a = np.array( [10,20,30,40] )
        b = np.arange( 4 )
        print('a = ',a,' ','b = ', b)
        print('a+b =',a + b)
        print('b**2 =',b**2)
        print('10*np.sin(a)=',10*np.sin(a))
        print('b<3 = ',b < 3)

        

        a = np.random.random( (2,4) )
        print(a)
        print(np.sum(a))
        print(np.min(a)) #最小值
        print(np.max(a)) #最大值
        print(np.sum(a,axis = 1)) #行求和
        print(np.sum(a,axis = 0)) #列求和

        

        A = np.arange(2,14).reshape((3,4))
        print(A)
        print(np.argmin(A)) #A中最小值的index
        print(np.argmax(A)) #A中最大值的index
        print(np.mean(A)) #A的平均值
        print(np.average(A)) #A的平均值
        print(A.mean()) #A的平均值
        print(np.median(A)) #A的中位数
        print(np.cumsum(A)) #A的累加
        print(np.diff(A)) #A的累差

        

        A = np.arange(-2,10).reshape((3,4))
        print(A)
        print(np.nonzero(A)) #非0元素的行列号
        print(np.sort(A)) #A排序,从小到大
        print(np.transpose(A)) #A的转置
        print(A.T) #A的转置
        print(np.clip(A,5,9)) #A中小于5的改为5,大于9的改为9
        print(np.mean(A,axis = 0)) #A中按列求平均值
        print(np.mean(A,axis = 1)) #A中按行求平均值

        

      4、索引  

        A = np.arange(3,15).reshape( (3,4) )
        print(A)
        print(A[2])
        print(A[2][0])
        print(A[2,1])

        

        A = np.arange(3,15).reshape( (3,4) )
        print(A)
        print(A[2,:]) #第二行所有数
        print(A[:,1]) #第一列所有数
        print(A[1,1:2]) #第一行,第一列到第二列的数

        

        for row in A:       #A按行遍历
         print(row)
        for column in A.T: #A转置后按行遍历
         print(column)
        for item in A.flat: 迭代A的每一项
         print(item)

        

      5、合并

        A = np.array([1,1,1],)
        B = np.array([2,2,2])
        print(np.vstack( (A,B) )) #行合并
        print(np.hstack( (A,B) )) #列合并
        print(A[np.newaxis,:])
        print(A[:,np.newaxis])
        print(np.concatenate( (A,B,B,A) ,axis = 0 ) )

         

      6、分割

        A = np.arange(12).reshape((3,4))
        print(np.split(A,2,axis = 1)) #列分2块
        print(np.split(A,3,axis = 0)) #行分3块
        #print(np.split(A,3,axis = 1)) #不能进行不均等分割

        

        print(np.array_split(A,3,axis = 1))     #进行不均等分割

        

        print(np.vsplit(A,3))       #行分
        print(np.hsplit(A,2)) #列分

        

    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    

    Monkey
  • 相关阅读:
    ASP.NET CORE 使用Consul实现服务治理与健康检查(2)——源码篇
    ASP.NET CORE 使用Consul实现服务治理与健康检查(1)——概念篇
    Asp.Net Core 单元测试正确姿势
    如何通过 Docker 部署 Logstash 同步 Mysql 数据库数据到 ElasticSearch
    Asp.Net Core2.2 源码阅读系列——控制台日志源码解析
    使用VS Code 开发.NET CORE 程序指南
    .NetCore下ES查询驱动 PlainElastic .Net 升级官方驱动 Elasticsearch .Net
    重新认识 async/await 语法糖
    EF添加
    EF修改部分字段
  • 原文地址:https://www.cnblogs.com/monkeyT/p/9099429.html
Copyright © 2011-2022 走看看