Python pandas 字符串选择

问题描述 投票:0回答:1

我想提取包含特定字符串的行 - 该字符串可以是一个较大的、以空格分隔的字符串(我想计入其中)的一部分,也可以是另一个(连续)字符串(我想将其计入其中)的一部分不想算在内)。该字符串可以位于字符串值的开头、中间或结尾。

示例 - 假设我想提取包含“HC”的任何行:

df=pd.DataFrame(columns=['test'])
df['test']=['HC','CHC','HC RD','RD','MRD', 'CEA','CEA HC']

test
0   HC
1   CHC
2   HC RD
3   RD
4   MRD
5   CEA
6   CEA HC

所需输出

    test
0   HC
2   HC RD
6   CEA HC
python string selection
1个回答
0
投票

您可以将

str.contains
方法与正则表达式一起使用
\bHC\b

>>> import pandas as pd
>>> df=pd.DataFrame(columns=['test'])
>>> df['test']=['HC','CHC','HC RD','RD','MRD', 'CEA','CEA HC']
>>> df[df['test'].str.contains(r'\bHC\b')]
     test
0      HC
2   HC RD
6  CEA HC

\b
:单词边界

© www.soinside.com 2019 - 2024. All rights reserved.