为了账号安全,请及时绑定邮箱和手机立即绑定

如何对python中数据框列中的唯一值执行函数

如何对python中数据框列中的唯一值执行函数

慕勒3428872 2022-07-05 17:14:55
我有大约 500 万条记录的数据,如下图所示,我需要获取新数据框中每个 ID 的最大值和平均值,以便每个 ID 只有一个值我对 python 和编程很陌生,这个小组很有帮助,但我似乎没有找到这个特定问题的相关答案。谢谢
查看完整描述

1 回答

?
largeQ

TA贡献2039条经验 获得超7个赞

这应该这样做:


import numpy as np

import pandas as pd


# create dummy data

ids = [1,1,1,1,2,2,2,2,2,3,3,3,3,4,4,4,4]

values = [13,21,34,22,34,2,3,34,12,45,45,23,67,76,32,23,80]

df = pd.DataFrame({'ID': ids, 'Values': values})


df = df.groupby('ID').agg({'Values': [min, max, np.mean]})  # group by on ID and calculate new columns min, max, mean for the values columns

df.columns = df.columns.droplevel(0)  # get rid of the multilevel columns due to the grouping

df.reset_index()

编辑:感谢 ALollz 指出以下快捷方式(避免多级索引):


df = df.groupby('ID')['Values'].agg([min, max, np.mean])  # group by on ID and calculate new columns min, max, mean for the values columns

df.reset_index()

让我知道是否有任何步骤需要详细说明。


查看完整回答
反对 回复 2022-07-05
  • 1 回答
  • 0 关注
  • 116 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信