首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用主DF中的数据创建摘要DF?

如何使用主DF中的数据创建摘要DF?
EN

Stack Overflow用户
提问于 2018-06-06 02:21:09
回答 1查看 97关注 0票数 0

这是我正在使用的一些模拟数据的一小部分-它的形式我称之为“主”DF。它有多个客户密钥,每个客户密钥可以拥有多个设备,这些设备可以在几天内访问wifi。

代码语言:javascript
复制
Customer Account Key  Device Ref  Date        Data Used (mb)
ABC123                Dev1        03/06/2018  100
ABC123                Dev2        03/06/2018  500
ABC123                Dev3        03/06/2018  250
ABC123                Dev1        04/06/2018  600
ABC123                Dev2        04/06/2018  1000
ABC123                Dev3        04/06/2018  350

我想在第二个DF中总结这个日期,它看起来像这样

代码语言:javascript
复制
Customer_Account_Key Total_Devices Total_Days Total_Data_Used
ABC123               3             2          2800

到目前为止,我已经成功地创建了第二个DF,其中每个唯一的客户帐户密钥只有一行

代码语言:javascript
复制
df_users['Customer Account Key'] = df_data['Customer Account Key'].unique()

但我真的很难根据新DF中的每个客户帐户密钥从主DF中提取摘要信息。

我尝试过Groupby和df.loc,但我什么也没做。我是Python的新手,所以我不确定这些是错误的方法,还是我没有正确使用它们。

有什么建议吗?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-06-06 02:47:18

您可以使用groupby + agg函数:

代码语言:javascript
复制
# aggregate data
df = df.groupby('Customer').agg({'Account_Key': {'Total_Devices':'nunique'},
                                 'Device_Ref_Date':{'Total_Days':'nunique'},
                                 'Data_Used':{'Total_Data_Used':'sum'}})

# remove multiindex column names
df.columns=df.columns.droplevel()
df = df.reset_index()

print(df)

   Customer  Account_Key  Device_Ref_Date  Data_Used
0   ABC123            3                2       2800
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50706598

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档