【发布时间】:2018-03-01 17:49:35
【问题描述】:
我正在尝试使用所有最新数据为每个“名称”获取一个结果,除非该列是空白的。在 R 中,我会使用 group_by,按时间戳排序并为每列选择最新值。我在这里尝试这样做并且非常困惑。有人可以解释如何在 Python 中执行此操作吗?在下面的示例中,我的目标是:
col2 date name
1 4 2018-03-27 15:55:29 bil #latest timestamp with the latest non-blank col4 value
到目前为止,这是我的代码:
d = {'name':['bil','bil','bil'],'date': ['2018-02-27 14:55:29', '2018-03-27 15:55:29', '2018-02-28 19:55:29'], 'col2': [3,'', 4]}
df2 = pd.DataFrame(data=d)
print(df2)
grouped = df2.groupby(['name']).sum().reset_index()
print(grouped)
sortedvals=grouped.sort_values(['date'], ascending=False)
print(sortedvals)
【问题讨论】:
标签: python python-3.x pandas sorting group-by