【问题标题】:Extract dataframe columns by value type按值类型提取数据框列
【发布时间】:2020-10-27 13:31:42
【问题描述】:

当加载数据框表单 excel 文件时,我需要识别两个具有字符串值的特定列之间的所有列。如何按数据类型过滤或获取列的索引?

【问题讨论】:

    标签: python excel pandas dataframe


    【解决方案1】:

    使用DataFrame.loc 按层和结束列选择,然后按DataFrame.select_dtypesnp.number 选择数字:

    df1 = df.loc[:, 'start col':'end col'].select_dtypes(np.number)
    

    如果需要没有numbers的列:

    df2 = df.loc[:, 'A':'C'].select_dtypes(exclude=np.number)
    

    【讨论】:

      【解决方案2】:

      您可以将select_dtypes 与接受类型列表的include 参数一起使用。

      df = pd.DataFrame({'A' : [0,1,2,3],
                        'B' : ['A','B','C','D'],
                        'C' : [0.1,0.2,0.3,0.4],
                        'D'  : ['C','F','I','L']})
      
      
      print(df)
      
         A  B    C  D
      0  0  A  0.1  C
      1  1  B  0.2  F
      2  2  C  0.3  I
      3  3  D  0.4  L
      
      
      start = 0
      end = 5
      df.iloc[:,start:end].select_dtypes(include=['float64','Int64'])
      
         A    C
      0  0  0.1
      1  1  0.2
      2  2  0.3
      3  3  0.4
      

      【讨论】:

        猜你喜欢
        • 2022-11-09
        • 1970-01-01
        • 1970-01-01
        • 2023-03-19
        • 1970-01-01
        • 1970-01-01
        • 2015-07-24
        • 2016-08-09
        • 2018-03-14
        相关资源
        最近更新 更多