按值类型提取数据帧列



从excel文件加载数据帧时,我需要识别两个具有字符串值的特定列之间的所有列。如何根据列的数据类型筛选或获取列的索引?

使用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)

您可以将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

相关内容

  • 没有找到相关文章

最新更新