如何根据列名的字符串从 df 中提取整列? [复制]
Posted
技术标签:
【中文标题】如何根据列名的字符串从 df 中提取整列? [复制]【英文标题】:How to extract the entire column from a df based on a string of the column name? [duplicate] 【发布时间】:2019-12-15 03:02:08 【问题描述】:我有 2 个 dfs:
df1 示例:s12
BacksGas_Flow_sccm ContextID StepID Time_Elapsed
46.6796875 7289972 12 25.443
46.6796875 7289972 12 26.443
df2 示例:step12
ContextID BacksGas_Flow_sccm StepID Time_Elapsed
7289973 46.6796875 12 26.388
7289973 46.6796875 12 27.388
由于BacksGas_Flow_sccm
在两个dfs 中的位置不同,我想知道如何使用df.columns.str.contains('Flow')
提取列
我试过了:
s12.columns[s12.columns.str.contains('Flow')]
但它只给出以下输出:
Index(['BacksGas_Flow_sccm'], dtype='object')
我希望提取整个列。如何做到这一点?
【问题讨论】:
【参考方案1】:您很接近,使用DataFrame.loc
和:
来获取按条件过滤的所有行和列:
s12.loc[:, s12.columns.str.contains('Flow')]
另一个想法是按列名选择:
cols = s12.columns[s12.columns.str.contains('Flow')]
s12[cols]
【讨论】:
非常感谢@jezrael。当谈到熊猫时,你通常是我的救星:D 非常感谢它以上是关于如何根据列名的字符串从 df 中提取整列? [复制]的主要内容,如果未能解决你的问题,请参考以下文章