对包含类别型变量的dataframe直接进行模型拟合,在fit()时会报错TypeError:could not convert string to float,这是由于classifier.fit()只适用于数值型变量需要对原始数据中的类别型变量作laber encoding或one-hot encoding
pandas中提供了get_dummies()对数据作one_hot编码,效果类似于虚拟变量化,但每一类别都会被保留(ex. sex会被分解成新的两列,sex.male sex.famale)
拟合完成后,对错误率、敏感性等进行相关分析,sklearn.metrics中提供了相关方法———accuracy_score(testset,predset)可得到精确度,confusion_matrix(testset,predset)可以得到混淆矩阵,根据相关计算公式可以得到其他指标
一些算法更详尽的解释可以参照晓东邪的博客:https://blog.youkuaiyun.com/xiaodongxiexie/article/details/71915259
本文探讨了在模型拟合过程中遇到的TypeError问题,当数据包含类别型变量时,需使用laberencoding或one-hotencoding进行预处理。通过pandas的get_dummies()函数实现one-hot编码,并介绍了如何利用sklearn.metrics进行模型评估,包括准确度和混淆矩阵的计算。
1751

被折叠的 条评论
为什么被折叠?



