假設我有一個如下所示的 pandas 數據框:car colorscorvette {"colors": ["red", "black"]}forester {"colors": ["white", "silver", "black"]}我想對每輛車的顏色進行一次熱編碼,如下所示:car black red white silver blackcorvette 1 1 0 0 0forester 1 0 1 1 0什么是完成此任務的優雅方式?
1 回答

藍山帝景
TA貢獻1843條經驗 獲得超7個贊
國際大學聯盟:
(df.drop('colors', axis=1)
.join(pd.get_dummies(pd.DataFrame.from_records(df.colors.values)
['colors'].explode())
.sum(level=0)
)
)
輸出:
car black red silver white
0 corvette 1 1 0 0
1 forester 1 0 1 1
添加回答
舉報
0/150
提交
取消