![](/img/trans.png)
[英]Show rows from dataframe where column values (strings) are similar to input values (strings)
[英]Select rows from dataframe where column values are lists of strings
我有一個 dataframe 我想根據包含字符串列表的列進行過濾。
例子:
df["artists"].head()
0 ['Sergei Rachmaninoff', 'James Levine', 'Berli...
1 ['Dennis Day']
2 ['KHP Kridhamardawa Karaton Ngayogyakarta Hadi...
3 ['Frank Parker']
4 ['Phil Regan']
Name: artists, dtype: object
我想做一些類似的事情
df[df['artists'] == 'Dennis Day']
但是,這會返回一個空的 dataframe。
我已經做了幾次其他嘗試,但似乎無法弄清楚如何按列表進行過濾,而且我的搜索結果傾向於提供將列表傳遞給過濾器的方法。
我相信它非常明顯,但任何幫助將不勝感激。
謝謝
使用應用和遮罩
import pandas as pd
df= pd.DataFrame(columns=["artists"])
df.loc[0,"artists"] = ['Frank Parker','Dennis Day']
df.loc[1,"artists"] = ['Sergei Rachmaninoff', 'James Levine']
mask = df.artists.apply(lambda row:'Dennis Day' in row)
df = df[mask]
df
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.