【发布时间】:2021-02-12 16:30:53
【问题描述】:
我正在尝试使用 pandas 数据框并在单个列上执行类似枢轴的操作。我想取多行(按一些标识列分组)并将该单列转换为虚拟指标变量。我知道pd.get_dummies(),但我想将多行压缩成一行。
以下示例:
import pandas as pd
import numpy as np
# starting data
d = {'ID': [1,1,1,2,2,3,3,3],
'name': ['bob','bob','bob','shelby','shelby','jordan','jordan','jordan'],
'type': ['type1','type2','type4','type1','type6','type5','type8','type2']}
df: pd.DataFrame = pd.DataFrame(data=d)
print(df.head(9))
ID name type
0 1 bob type1
1 1 bob type2
2 1 bob type4
3 2 shelby type1
4 2 shelby type6
5 3 jordan type5
6 3 jordan type8
7 3 jordan type2
我希望最终结果看起来像:
ID name type1 type2 type4 type5 type6 type8
0 1 bob 1 1 1 0 0 0
1 2 shelby 1 0 0 0 1 0
2 3 jordan 0 1 0 1 0 1
【问题讨论】:
标签: python pandas dataframe pandas-groupby dummy-variable