zoukankan      html  css  js  c++  java
  • 数据分析--基础numpy(一)

    一: numpy 结构设定

    1:numpy 结构

    numpy array 类型数据类型必须为统一类型

    1 import numpy as np
    2 number1 =np.array([1,2,3,4])
    3 print(number1)
    4 number1.dtype

    image.png

    二:numpy 索引取值及切片

    1 索引取值

    1 demonumber =np.array([[1,2,3],[4,5,6],[7,8,9]])
    2 print(demonumber)
    3 #取数字6
    4 print(demonumber[1,2])

    取数字6

    因为是数组  

    如果取所有行 用 [:,2]    ":" 代表所有

    取横坐标 第二行   索引1

      纵坐标 取第三列   索引2

    image.png

    2 索引切片

    1> 一维切片

    顾头不顾腚切片方式

    demo4 =np.array([1,2,3,4,5])
    print(demo4)
    #取 2,3,4
    print(demo4[1:4])

    image.png

    2>多维切片

    取 第一二列数据

    demonumber =np.array([[1,2,3],[4,5,6],[7,8,9]])
    print(demonumber)
    print(demonumber[:,0:2])

    冒号的含义是所有行   , 0:2 意思是 取索引0到2 列数据

    image.png

    三:numpy 的数据计算

    1:一 维数据计算

    如图:让demo5 ==10  打印内容返回布尔类型数据 第0个索引位置为true

    demo5 =np.array([10,20,30,40])
    demo5==10

    image.png

    2: 多维数据计算

    我们查询多维矩阵中是否存在4 这个int 数值

    demonumber =np.array([[1,2,3],[4,5,6],[7,8,9]])
    print(demonumber)
    demonumber==4

    image.png

    3: 利用索引数据 反向取出数据值

    1>一维数组反向取值

    利用数据计算取出索引ture 的位置

    在利用索引找到数据值  ,一维数组意义不大, 多维数组 展示

    demo11 =np.array([10,20,30,40,50])
    demo11_30 =demo11==30 
    print(demo11_30)
    
    print(demo11[demo11_30])

    image.png

    2>:多维数组反向取值

     # 取 第三列数据 判断是否等于11

     #取 11 值所在的矩阵的行

     #取11 值所在矩阵的列

    demo12 =np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]])
    print(demo12)
    demo12_11=(demo12[:,2]==11)     # 取 第三列数据 判断是否等于11
    print(demo12_11) 
    print(demo12[demo12_11,:])  #取 11 值所在的矩阵的行
    print(demo12[:,demo12_11])  

    image.png

    四: numpy 矩阵基础

    1:与或判断

    1>: 与   &

    我们这里取  等于10又等于5的值

    demo1 =np.array([5,10,15,20])
    demo1_5_10 =(demo1==10) & (demo1==5)   #取等于10 又等于5的值  
    print(demo1_5_10)   #显然结果没有

    image.png  显然没有

    2>:或  

    同理取 等于10 或 等于5的值

    import numpy as np
    demo1 =np.array([5,10,15,20])
    demo1_5_10 =(demo1==10) | (demo1==5))   #取等于10 或等于5的值  
    print(demo1_5_10)  

    image.png 0 ,1 索引为 ture

    2:利用与或反向取值

    与反向取值类似. 不过是增加了一个与或操作

    demo2 =np.array([[1,2,3],[4,5,6],[7,8,9]])
    print(demo2)
    demo_5 = ((demo2[:,1] ==5) |(demo2[:,1] ==10) ) 
    print(demo_5)
    demo2[demo_5,1] =10
    print (demo2)
    image.png

    3 矩阵行求和 /列求和

    1: 行列求和

    sum(指定行列)  求和

    import numpy as np 
    demo1 = np.array([[1,2,3],[4,5,6],[7,8,9]])
    
    print (demo1)
    print(demo1.sum(axis=1))  # axis =1 按照行求和
    print(demo1.sum(axis=0)) #axis=0 按照列求和
     
  • 相关阅读:
    Codesys——限定符的使用方法[来自Codesys的Help]
    分页后台
    多条件查询判断
    添加跟反射
    试图页面分页首选
    动态游标存储过程 表名为参数
    索引器
    泛型 Generics
    Win10 锁屏图片 路径
    SQL2014 error 40 ( Microsoft SQL Server, 错误2)
  • 原文地址:https://www.cnblogs.com/baili-luoyun/p/13029800.html
Copyright © 2011-2022 走看看