gpt4 book ai didi

python - Pandas :如果关键字出现在任何列中,则选择行

转载 作者:太空狗 更新时间:2023-10-30 00:37:47 25 4
gpt4 key购买 nike

我知道有一个关于在一列 ( here ) 中搜索字符串的相关主题,但是如何在所有列中使用 pd.Series.str.contains(pattern)?

df = pd.DataFrame({'vals': [1, 2, 3, 4], 'ids': [u'aball', u'bball', u'cnut', u'fball'],
'id2': [u'uball', u'mball', u'pnut', u'zball']})


In [3]: df[df['ids'].str.contains("ball")]
Out[3]:
ids vals
0 aball 1
1 bball 2
3 fball 4

最佳答案

堆栈

如果你只选择可能有 'ball' 的东西,它们是属于 dtype object 的列,那么你可以 stack 将生成的数据帧放入一个系列对象中。此时,您可以执行 pandas.Series.str.contains 并将结果unstack 返回到数据框中。

df.select_dtypes(include=[object]).stack().str.contains('ball').unstack()

ids id2
0 True True
1 True True
2 False False
3 True True

关于python - Pandas :如果关键字出现在任何列中,则选择行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51045207/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com