python - 在python中只选择ID的最新记录
问题描述
我正在寻找一种在 python 中仅按 ID 选择最新日期观察的方法。什么是最好最有效的方法?(我不想排序,我只想隔离最新的观察结果)我尝试了以下方法:
data1.loc[data1.groupby('id')['date'].idxmax()]
但它不起作用。
解决方案
示例数据框
数据1:
id date
0 id1 2019-03-19
1 id1 2019-01-11
2 id1 2019-07-23
3 id2 2020-04-03
4 id2 2020-02-03
这将做:
data1['date'] = pd.to_datetime(data1.date)
data1.groupby(["id"]).agg({'date' : np.max})
date
id
id1 2019-07-23
id2 2020-04-03
推荐阅读
- php - 如何使用这样的 IF 条件对 LEFT JOIN 进行单个查询?
- swift - Swift - textlabel 和 detailTextLabel 的自定义单元格宽度和高度
- corda - 如果合同中的一个引用另一个状态,您是否需要升级这两个状态
- javascript - Gulp AssertionError - Sass 依赖项
- android - 在 Google Cloud Vision API 中指定响应语言
- matlab - 归一化两个值之间的复数matlab
- java - Spring 工具套件 - SunCertPathBuilderException:无法找到请求目标的有效认证路径
- java - 使用孵化的 Java 10 HttpClient 重建 HTTP 流
- python-2.7 - 在 Visual Studio 2017 中执行 Python 文件有效,但当我通过 cmd 执行时无效
- arrays - Angular 4找不到“object”类型的不同支持对象“[object Object]”。NgFor 仅支持绑定到 Iterables,例如 Arrays