该str.contains()
方法将数据框过滤为仅包含以下值"A"
:
df = pd.DataFrame({"City": ["A","B","C","D","A","A"]})
df[df["City"].str.contains("A")]
但是,如果我尝试.isin()
在同一个数据帧上使用,则输出结果为空系列:
df = pd.DataFrame({"City": ["A","B","C","D","A","A"]})
df[df["City"].isin("A")]
pandas.Series.isin()
需要一个list
(更具体地说,一个set
或类似列表的)要搜索的东西。
使用.isin(["A"])
代替.isin("A")
:
df[df["City"].isin(["A"])]
# ^ ^
输出:
>>> df[df["City"].isin(["A"])]
City
0 A
4 A
5 A
由于 的这个特性isin
,您可以一次搜索多个项目:
>>> df[df["City"].isin(["A", "B"])]
City
0 A
1 B
4 A
5 A