python - Pandas - 如何从唯一值创建新列并按唯一值分组?
问题描述
我有这样的数据框:
import pandas as pd
data = [
[1, 'A', 10], [1, 'B', 20], [1, 'C', 30],
[2, 'A', 30], [2, 'B', 20], [2, 'C', 10],
[3, 'A', 20], [3, 'B', 40], [3, 'C', 20]
]
df = pd.DataFrame(data, columns = ['Day', 'Company', 'Profit'])
df
我想改变这个表,这样:
- 每个唯一的公司名称都成为一个新列
- 剩余数据按天分组
如何将数据框转换为这样的新数据框?
解决方案
尝试使用数据透视表:
df_out = pd.pivot(df, index='Day', columns="Company", values="Profit").reset_index()
推荐阅读
- bash - 如何使用 ImageMagick 和获取的变量调整 bash 脚本中的图像大小?
- python - TypeError:不可散列的类型:python国际象棋程序中的“列表”
- c - 变量值在结构赋值后打印和没有结构赋值时打印时是不同的
- ffmpeg - 某些三星机型不支持 ffmpeg 1080p50 50fps,导致错误
- java - 如何在 RPC 调用期间处理 Corda 异常
- html - 将边框从 1px 增加到 2px 时,如何防止 li 的高度发生变化?
- python - Python说它在不包含关键字的字符串中找到了关键字
- java - 在 Android 中使用 Volley 进行网络单元测试
- reactjs - 如何解决 Material ui 中的多个菜单项的问题
- jquery - 如何在 Angular Project 中添加一些 Jquery 代码