[英]How can I drop multiple rows in my dataframe by list?
我想根據值列表刪除一堆行。 具體來說,我有一個棒球運動員從 1999 年到 2021 年的統計數據列表。如果一名球員在 1999 年打球,我想刪除他們的所有行。 例如,如果他們在 1999 年、2000 年和 2001 年參加比賽,我想刪除所有這三行。
我使用產生 dataframe 的 df[df['Season'].isin([1999])]['Name'] 識別玩家列表(如果需要,可以將其轉換為列表)。
我現在如何獲取我原來的 dataframe 並根據該名稱列表刪除所有行?
以下代碼刪除了參加特定賽季的所有球員;
原DF:
Season Player
0 2000 B
1 1993 B
2 1997 C
3 1994 A
4 1997 C
5 2000 F
6 1998 D
7 1997 C
8 1999 E
使用下面的代碼,我們可以消除行
a = df[df['Season'].isin([2000])]['Player'].values
df = df.loc[~df['Player'].isin(a), :]
df
Output:
Season Player
2 1997 C
3 1994 A
4 1997 C
6 1998 D
7 1997 C
8 1999 E
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.