#python #pandas #list #csv #filter
#python #pandas #Список #csv #Фильтр
Вопрос:
В принципе, у меня есть один csv-файл под названием «Leads.csv», и он содержит все уже имеющиеся у нас данные о продажах. Я хочу превратить этот столбец csv «Лиды» в список, а затем проверить csv-файл «Отчет», чтобы увидеть, есть ли там какие-либо лиды, а затем отфильтровать его.
Вот что я пробовал:
import pandas as pd
df_leads = pd.read_csv('Leads.csv')
leads_list = df_leads['Leads'].values.tolist()
df = pd.read_csv('Report.csv')
df = df.loc[(~df['Leads'].isin(leads_list))]
df.to_csv('Filtered Report.csv', index=False)
Любая помощь очень ценится!
Комментарии:
1. Ваш код частично избыточен, но корректен. В чем ваш вопрос?
Ответ №1:
Вы можете попробовать:
import pandas as pd
df_leads = pd.read_csv('Leads.csv')
df = pd.read_csv('Report.csv')
set_filtered = set(df['Leads'])-(set(df_leads['Leads']))
df_filtered = df[df['Leads'].isin(set_filtered)]
Примечание: наборы, значительно быстрее, чем списки для этой операции.