[英]Iterate over list of dataframes and drop specific rows
我有一個數據框列表:
list = [a, b, c, d, e ,f]
這些數據幀中的每一個都有一個名為“PEOPLE”的列,我想遍歷此列表並刪除任何數據框中的任何行,其中“PEOPLE”中的值是另一個列表中的值之一:
people_to_drop = ['PERSON ABC','PERSON DEF']
我一直在嘗試以下方法:
for index,item in enumerate(list):
list[index] = item[~item['PEOPLE'].isin(people_to_drop)].copy()
但是,當我在 for 循環運行后檢查數據集時,它們似乎沒有刪除我想要刪除的行。 有一個更好的方法嗎? 提前致謝!
您可以嘗試如下列表理解
df_list = [a, b, c, d, e ,f]
new_df_list = [a_df[~a_df['PEOPLE'].isin(people_to_drop)].copy() for a_df in df_list]
之后,打印出new_df_list
每個數據幀進行檢查
print(new_df_list[0])
print(new_df_list[1])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.