簡體   English   中英

使用 pandas 基於另一列過濾 dataframe 值

[英]filter dataframe values based on another column using pandas

有 df 值。


name     last_date                     submission_date

mike  2020-04-10 02:22:22.222   2020-04-01 02:22:22.222
mike  2020-04-10 02:22:22.222   2020-04-08 02:22:22.222
mike  2020-04-10 02:22:22.222   2020-04-16 02:22:22.222

ross  2020-04-16 02:22:22.222   2020-04-18 02:22:22.222
ross  2020-04-16 02:22:22.222   2020-04-19 02:22:22.222
ross  2020-04-16 02:22:22.222   2020-04-20 02:22:22.222
ross  2020-04-16 02:22:22.222   2020-04-15 02:22:22.222

carter 2020-04-22 02:22:22.222   2020-04-28 02:22:22.222
carter 2020-04-22 02:22:22.222   2020-04-15 02:22:22.222
carter 2020-04-22 02:22:22.222   2020-04-19 02:22:22.222
carter 2020-04-22 02:22:22.222   2020-04-21 02:22:22.222



根據 last_date 過濾值。 如果 submit_date 大於 last_date 則排除它的值

預期 output:

name     last_date                     submission_date

mike  2020-04-10 02:22:22.222   2020-04-01 02:22:22.222
mike  2020-04-10 02:22:22.222   2020-04-08 02:22:22.222

ross  2020-04-16 02:22:22.222   2020-04-15 02:22:22.222

carter 2020-04-22 02:22:22.222   2020-04-15 02:22:22.222
carter 2020-04-22 02:22:22.222   2020-04-19 02:22:22.222
carter 2020-04-22 02:22:22.222   2020-04-21 02:22:22.222




您可以query dataframe ,其中submission_date小於或等於last_date ,這將返回滿足條件的行並過濾掉 rest:

df.query("last_date>=submission_date")

    name                 last_date         submission_date
0   mike   2020-04-10 02:22:22.222 2020-04-01 02:22:22.222
1   mike   2020-04-10 02:22:22.222 2020-04-08 02:22:22.222
2   ross   2020-04-16 02:22:22.222 2020-04-15 02:22:22.222
3  carter  2020-04-22 02:22:22.222 2020-04-15 02:22:22.222
4  carter  2020-04-22 02:22:22.222 2020-04-19 02:22:22.222
5  carter  2020-04-22 02:22:22.222 2020-04-21 02:22:22.222

暫無
暫無

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

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