python - NaiveBayes 分类器在 python 中处理不同的数据类型

标签 python scikit-learn gaussian naivebayes

我正在尝试用 Python 实现朴素贝叶斯分类器。我的属性具有不同的数据类型:字符串、整数、 float 、 bool 值、序数

我可以使用高斯朴素贝叶斯分类器(Sklearn.naivebayes:Python包),但我不知道如何处理不同的数据类型。分类器抛出错误,指出无法处理 Int 或 float 以外的数据类型

我可能想到的一种方法是将字符串编码为数值。但我也怀疑,如果我这样做,分类器的表现会有多好。

最佳答案

是的,您需要将字符串转换为数值 朴素贝叶斯分类器无法处理字符串,因为字符串无法进入数学方程。

如果您的字符串有一些“标量值”,例如“大、中、小”,您可能希望将它们分类为“3,2,1”, 但是,如果您的字符串是没有顺序的内容(例如颜色或名称),则可以执行此操作或分配二进制变量,每个变量都引用颜色或名称(如果它们不多)。

例如,如果您要对汽车进行分类,它们可以是红色、蓝色和绿色,您可以定义变量“红色”、“蓝色”、“绿色”,其取值 0/1,具体取决于汽车的颜色。

关于python - NaiveBayes 分类器在 python 中处理不同的数据类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30937667/

相关文章:

python - 在 Python 中识别一维和二维数据中的异常值 block

python - PyQt QLineEdit 和 'paste' 事件?

python - 在新的 GAE/Python/webapp2 网站中重定向旧网站 URL

python - 医学术语的语义相似性

python - Scikit-learn 返回的确定系数 (R^2) 值小于 -1

c++ - 实现高斯模糊 - 如何计算卷积矩阵(内核)

r - 从 MFCC 训练 GMM 的库

python - Python 中的非对称高斯拟合

python - k-means 上 sklearn 中的 dtype 不匹配

python - 向图像添加泊松噪声