一个热编码单个分类数值列

我正在寻找对分类数字列进行编码。我从字符串类型的分类列中看到了很多编码,但在已经转换为数字时却没有。


我的目标是转换这个熊猫数据框:


+---------+

|year|hour|

|2018|1|

|2018|3|

|2019|4|

|2019|4|

+------+

到:


+-----------------------------------------+

|year_2018|year_2019|hour_1|hour_3|hour_4|

|1|0|1|0|0|

|1|0|0|1|0|

|0|4|0|0|1|

|0|1|0|0|1|

+---------+


慕尼黑5688855
浏览 139回答 1
1回答

撒科打诨

你需要 pd.get_dummiesdf = pd.DataFrame({'year':[2018,2018,2019,2019], 'hour':[1,3,4,4]})print(pd.get_dummies(df, columns=['year','hour'], drop_first=False))输出:  year_2018  year_2019  hour_1  hour_3  hour_4                                                                                                                   0          1          0       1       0       0                                                                                                                   1          1          0       0       1       0                                                                                                                   2          0          1       0       0       1                                                                                                                   3          0          1       0       0       1  
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python