[英]Dropping multiple ranges of rows in a Pandas DataFrame
如果我們有一個 Pandas DataFrame,例如,大小 (100, 5) 並且想要通過索引刪除多個行范圍(不是多個行或行范圍,而是多個行范圍),有沒有辦法做它不必遍歷索引?
例如,如果我想在索引 (3, 10)、(24, 29) 和 (31, 64) 之間刪除 Pandas DataFrame df
的行,那么一種天真的方法是
for pair in [(3, 10), (24, 29), (31, 64)]:
a, b = pair
df.drop(df.iloc[a:b].index, inplace=True)
但我希望有一種方法可以一次刪除所有行的范圍。
謝謝你。
對於項目中的類似案例,我遇到了與@shona 相同的問題,@sammywemmy df.drop(np.r_[3:10,24:29,31:64])
提供的解決方案對我來說效果很好。 我可以一次性從原始 DataFrame 中刪除指定的行范圍。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.