Python 在dataframe上查找特定单词
当我在数据框中查找一个单词时,它会显示包含这些字母的每个条目,但我真的希望它显示那个特定的单词。你能帮我吗 下面是一个示例:Python 在dataframe上查找特定单词,python,pandas,dataframe,Python,Pandas,Dataframe,当我在数据框中查找一个单词时,它会显示包含这些字母的每个条目,但我真的希望它显示那个特定的单词。你能帮我吗 下面是一个示例: 将熊猫作为pd导入 d={'col1':[ROL'、'ROR'、'ROL'、'ROL'、'TROLLER'、'ROL'、'rolter'、'nan']、'col2':[1,2,3,4,5,6,7,9,10]] df=pd.DataFrame(数据=d) ROL=df[df['col1'].fillna(0).str.contains(“ROL | ROL”,na=Fal
将熊猫作为pd导入
d={'col1':[ROL'、'ROR'、'ROL'、'ROL'、'TROLLER'、'ROL'、'rolter'、'nan']、'col2':[1,2,3,4,5,6,7,9,10]]
df=pd.DataFrame(数据=d)
ROL=df[df['col1'].fillna(0).str.contains(“ROL | ROL”,na=False)]
输出是这样的
但我真正想要的是没有这些条目的东西
代码的问题是,除了
ROVER
之外,您的str.contains(“ROL | ROL”)
与所有值都匹配。例如,“ROLLER”
也包含“ROL”
尝试使用str.contains
:
import re
ids = df.col1.str.contains('rol$|rol-|rol ', flags = re.IGNORECASE, regex = True, na = False)
然后过滤:
df[ids]
给出:
Out[115]:
col1 col2
0 ROL 1
2 ROL- 33 3
4 ROL -2 5
6 rol nº12 7
代码的问题是您的
str.contains(“ROL | ROL”)
匹配除ROVER
之外的所有值。例如,“ROLLER”
也包含“ROL”
尝试使用str.contains
:
import re
ids = df.col1.str.contains('rol$|rol-|rol ', flags = re.IGNORECASE, regex = True, na = False)
然后过滤:
df[ids]
给出:
Out[115]:
col1 col2
0 ROL 1
2 ROL- 33 3
4 ROL -2 5
6 rol nº12 7
这回答了你的问题吗?除非绝对必要,否则请不要以图像形式共享信息。见:,,对不起。我相信它增加了价值并帮助解释了我的问题这是否回答了你的问题?除非绝对必要,否则请不要以图像形式共享信息。见:,,对不起。我相信它增加了价值,并帮助解释了我的问题什么是re。功能?因为它显示:name错误:name“re”不是必须导入的方法。在代码开头运行
import re
。re是什么。功能?因为它显示:name错误:name“re”不是必须导入的方法。在代码开头运行import-re
。