Anu*_*wat 11 python-2.7 pandas
我有一个包含以下数据的数据框:
invoice_no dealer billing_change_previous_month date
110 1 0 2016-12-31
100 1 -41981 2017-01-30
5505 2 0 2017-01-30
5635 2 58730 2016-12-31
Run Code Online (Sandbox Code Playgroud)
我想只有一个拥有最长日期的经销商.所需的输出应该是这样的:
invoice_no dealer billing_change_previous_month date
100 1 -41981 2017-01-30
5505 2 0 2017-01-30
Run Code Online (Sandbox Code Playgroud)
每个经销商应该与最大日期不同,提前感谢您的帮助.
Ruf*_*fat 10
这里/sf/answers/2907178921/是更正确的解决方案:
df.sort_values('date').groupby('dealer').tail(1)
Run Code Online (Sandbox Code Playgroud)
您可以使用groupby和transform使用布尔索引
df_new = df[df.groupby('dealer').date.transform('max') == df['date']]
invoice_no dealer billing_change_previous_month date
1 100 1 -41981 2017-01-30
2 5505 2 0 2017-01-30
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4886 次 |
| 最近记录: |