基于朴素贝叶斯的性别预测(体重,鞋码,身高)的Python代码设计
时间: 2023-12-05 22:34:14 浏览: 176
rgr:基于身高体重输入的用于性别预测的简单朴素贝叶斯分类器
好的,下面是一个基于朴素贝叶斯的性别预测(体重,鞋码,身高)的Python代码设计的简单示例,您可以参考它来进行代码编写:
```
import numpy as np
from sklearn.naive_bayes import GaussianNB
# 收集样本数据
X = np.array([[60, 40, 170], [70, 42, 175], [65, 39, 172], [55, 37, 160], [58, 38, 165], [67, 41, 180], [72, 43, 185], [68, 40, 178], [62, 38, 168], [75, 44, 190]])
Y = np.array(['female', 'male', 'female', 'female', 'female', 'male', 'male', 'male', 'female', 'male'])
# 数据预处理
# 可以根据需求进行异常值和缺失值处理等
# 数据分为训练数据和测试数据
X_train, X_test = X[:8], X[8:]
Y_train, Y_test = Y[:8], Y[8:]
# 使用朴素贝叶斯分类器进行模型训练
clf = GaussianNB()
clf.fit(X_train, Y_train)
# 使用测试数据对模型进行测试
Y_pred = clf.predict(X_test)
# 输出预测结果和准确率
print("预测结果:", Y_pred)
print("准确率:", np.mean(Y_pred == Y_test))
```
以上代码中,我们使用了`numpy`和`sklearn`两个库来进行数据处理和模型训练。我们首先收集了一些样本数据,并将它们分为训练数据和测试数据。然后,使用`GaussianNB`类来实现朴素贝叶斯分类器,并调用`fit`方法对训练数据进行训练。最后,使用`predict`方法对测试数据进行预测,并计算预测准确率。
阅读全文