python – 在Pandas Dataframe中聚合,转置和引入值
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python – 在Pandas Dataframe中聚合,转置和引入值,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1021字,纯文字阅读大概需要2分钟。
内容图文
![python – 在Pandas Dataframe中聚合,转置和引入值](/upload/InfoBanner/zyjiaocheng/727/0c06014d8aea4b63a3453aa080d1791a.jpg)
Input DF:
ID Time Value
0 1 5
0 2 7
0 3 8
1 1 1
1 2 4
1 3 6
Output DF:
1 2 3
0 5 7 8
1 1 4 6
目标:我目前有类似于输入DF的东西,我希望将其转换为输出DF.
>输出DF的第1行等于唯一的时间数据点.
>输出DF的第1列等于唯一ID.剩余的
>中心点等于给定id /时间的Value元素
我最接近的是通过做这样的事情:
group_by = input_df.groupby('ID').agg({'Value':np.mean})
要么:
group_by = input_df.groupby('time').agg({'Value':np.mean})
这将使我获得由ID或Time汇总的聚合方式,但我无法弄清楚如何做到这两个并且只是拉入值.
解决方法:
你可以使用pivot:
df.pivot(index='ID', columns='Time', values='Value')
Out:
Time 1 2 3
ID
0 5 7 8
1 1 4 6
这假设时间/ ID对是唯一的.如果没有,您可以用pivot_table替换它并添加合适的聚合函数:
df.pivot_table(index='ID', columns='Time', values='Value', aggfunc='first')
Out:
Time 1 2 3
ID
0 5 7 8
1 1 4 6
你的方法也适用于unstack:
df.groupby(['ID', 'Time'])['Value'].agg('mean').unstack()
Out:
Time 1 2 3
ID
0 5 7 8
1 1 4 6
内容总结
以上是互联网集市为您收集整理的python – 在Pandas Dataframe中聚合,转置和引入值全部内容,希望文章能够帮你解决python – 在Pandas Dataframe中聚合,转置和引入值所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。