zoukankan      html  css  js  c++  java
  • pandas 选择数据

    索引pandas DataFrame的方法总结 

    1. 直接用中括号索引 行或者列 :

       1) 用 df['A'] 索引 或者 df.A

       2) 用切片索引 df[1:3] 或者  df['20130101':'20130103']

    2. 用 df.loc[] 索引 ,如果用 切片 或 list 只能用 index 或者 columns的名字

      1) 可以用切片或者list 来选择行列 ,参数1为行,参数2为列,例如 

        df.loc[:,['A','B']]
          df.loc['20130101',['A','B']]

    3.  用 df.iloc[] 索引,如果用切片或者list表示,只能用index

    4.  用条件选择rows ,之后可以再用loc iloc选择行列

    https://www.bilibili.com/video/BV1Ex411L7oT?p=12

    import pandas as pd
    import  numpy as np
    
    dates = pd.date_range('20130101',periods=6)
    # index 有6 columns 有4 所以要reshape(6,4)
    df = pd.DataFrame(np.arange(24).reshape((6,4)) , index = dates,columns= ['A','B','C','D'])
    
    print(df)
    
    # 1.索引方法  索引列
    print(df['A'],df.A)
    # 2.切片索引rows  根据 index 或者根据 index name
    print(df[1:3] , df['20130101':'20130103'])
    # 3. select by label  loc
    print(df.loc['20130101'])
    # 4. 打印 全部行的 A B 两列 , 注意列的list 与切片一样, 是整体作为 df.loc[]的一个参数
    print(df.loc[:,['A','B']])
    # 5. 只打印 某行的 A B 两列
    print(df.loc['20130101',['A','B']])
    #6. select by position  iloc
    print(df.iloc[3])  # 打印第三行
    print(df.iloc[3:5,1:3])  # 切片 打印第三行到第五行,第一列到第三列
    print(df.iloc[[1,3,5],1:3])
    
    # 7. Boolean indexing  选择满足条件的rows
    print(df)
    print(df[df.A>8])
    print(df[df.A > 8].loc[:,['A','B']])
  • 相关阅读:
    js_sl 分享
    js_sl 延迟菜单
    jszs 历史管理
    jszs 对象引用
    jszs 快速排序
    jszs 枚举算法
    dom cookie记录用户名
    dom 拖拽回放
    dom div重合提示
    dom 输入文字模拟滚动
  • 原文地址:https://www.cnblogs.com/ChevisZhang/p/13837426.html
Copyright © 2011-2022 走看看