对具有多个组的数据帧执行一次热编码
Performing one hot encoding on dataframe with multiple groups
我是 python
中数据集机器学习的新手,我正在尝试对以下数据帧执行一次热编码(仅显示一个片段)
id
国家
设备
100
新加坡
三星
100
频道
星系
200
ab
pocophone
200
ee
iphone 1
200
我的
iphone 2
我希望结果是这样的
id
新加坡
通道
ab
ee
我的
100
1
1
0
0
0
200
0
0
1
1
1
希望得到任何建议和帮助,谢谢大家!
使用pd.crosstab
:
>>> pd.crosstab(df['id'], df['country'])[df['country']
country sg ch ab ee my
id
100 1 1 0 0 0
200 0 0 1 1 1
我是 python
中数据集机器学习的新手,我正在尝试对以下数据帧执行一次热编码(仅显示一个片段)
id | 国家 | 设备 |
---|---|---|
100 | 新加坡 | 三星 |
100 | 频道 | 星系 |
200 | ab | pocophone |
200 | ee | iphone 1 |
200 | 我的 | iphone 2 |
我希望结果是这样的
id | 新加坡 | 通道 | ab | ee | 我的 |
---|---|---|---|---|---|
100 | 1 | 1 | 0 | 0 | 0 |
200 | 0 | 0 | 1 | 1 | 1 |
希望得到任何建议和帮助,谢谢大家!
使用pd.crosstab
:
>>> pd.crosstab(df['id'], df['country'])[df['country']
country sg ch ab ee my
id
100 1 1 0 0 0
200 0 0 1 1 1