簡體   English   中英

如何在Pandas DataFrame的特定列中達到最小值后刪除行?

[英]How to drop rows after minimum value reached in specific column in Pandas DataFrame?

如果我有這樣的熊貓數據框:

      Col A  Col B
 0      9      2
 1      7      1
 2      6      9
 3      3      3
 4      1      4
 5      6      3
 6      7      2
 7      9      1

在達到列A的最小值(為1)之后,如何刪除所有行,這樣我得到一個熊貓數據框,如下所示:

      Col A  Col B
 0      9      2
 1      7      1
 2      6      9
 3      3      3
 4      1      4
df[df.index<=df['Col A'].idxmin()]

嘗試下面的代碼,希望對您有所幫助。

df = pd.DataFrame({'Col A': [9,7,6,3,1,6,7,9],'Col B':[2,1,9,3,4,3,2,1]})
df_list = df['Col A'].tolist()
index = df_list.index(min(df_list))
df.iloc[:index+1]

Ouput將是:

  Col A     Col B
0   9       2
1   7       1
2   6       9
3   3       3
4   1       4

使用idxmin()

df = df.loc[:df['Col A'].idxmin()]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM