fit_transform,pandas中的sklearn和get_dummies之间有什么不同



当我在Sklearn和Pandas中进行单次编码进行数据处理时,我有两个选择:

第一个方法:train_data使用fit_transform和test_data使用transform

第二个方法:或者我可以使用pandas get_dummies

它们之间有什么区别?它们是否具有相同的效果?

谢谢

基本上,onehotencoder和pandas.get_dummies都会从分类变量中创建二进制变量。例如:

df = pd.DataFrame({'A': ["1", "1", "3"], 'B': ["2", "3", "1"],
                'C': [1, 2, 3]})
print(pd.get_dummies(df, prefix=['col1', 'col2']))

将打印出来:

C  col1_1  col1_3  col2_1  col2_2  col2_3
0  1     1.0     0.0     0.0     1.0     0.0
1  2     1.0     0.0     0.0     0.0     1.0
2  3     0.0     1.0     1.0     0.0     0.0

onehotencoder可以处理非弦变量,而get_dummies不能。另外,OneHotenCoder将返回数组,而不是Pandas DataFrame。

相关内容

  • 没有找到相关文章

最新更新