gpt4 book ai didi

python - Pandas DataFrame 搜索列中可用列表中的所有字符串

转载 作者:太空宇宙 更新时间:2023-11-03 18:31:07 24 4
gpt4 key购买 nike

在下面的DataFrame中,我需要搜索“a”中的所有字符串。

df = pd.DataFrame({'id' : [1,2,3,4],
'path' : ["p1,p2,p3,p4","p1,p2,p1","p1,p5,p5,p7","p1,p2,p3,p3"]})

需要检查“p1”和“p2”是否都可用。

a = ['p1','p2']

类似于以下内容

if all(x in df.path for x in a):
print df

最佳答案

这个怎么样?

import pandas as pd

df = pd.DataFrame({'id': [1,2,3,4],
'path': ["p1,p2,p3,p4","p1,p2,p1","p1,p5,p5,p7","p1,p2,p3,p3"]})

a = [ 'p1', 'p2']

# see: http://stackoverflow.com/a/470602/1407427
reg_exp = ''.join(['(?=.*%s)' % (i) for i in a])

# alternatively: print df.path.str.match(reg_exp, as_indexer=True)
print df.path.str.contains(reg_exp)

结果:

0     True
1 True
2 False
3 True
Name: path, dtype: bool

关于python - Pandas DataFrame 搜索列中可用列表中的所有字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22370429/

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