用Python语言写一个基于决策树算法对鞋子销售预测
时间: 2023-11-22 14:54:24 浏览: 87
机器学习-使用python完成基于决策树开发的分西瓜算法(kaggle数据集)
好的,下面是一个基于决策树算法的鞋子销售预测的Python实现。
首先,我们需要准备数据集。假设我们有以下数据集,包含了鞋子的品牌、价格和销售情况:
| 品牌 | 价格 | 是否售出 |
| ---- | ---- | -------- |
| Adidas | 100 | 是 |
| Nike | 80 | 是 |
| Adidas | 120 | 否 |
| Puma | 90 | 是 |
| Nike | 70 | 否 |
| Puma | 110 | 否 |
| Adidas | 130 | 否 |
接下来,我们可以使用Python中的scikit-learn库来构建和训练决策树模型。具体来说,我们需要导入DecisionTreeClassifier类,将数据集拆分为训练集和测试集,然后使用训练集来训练模型并使用测试集来评估模型的性能。
下面是完整的Python代码实现:
```python
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
# 准备数据集
X = [['Adidas', 100], ['Nike', 80], ['Adidas', 120], ['Puma', 90], ['Nike', 70], ['Puma', 110], ['Adidas', 130]]
y = ['Yes', 'Yes', 'No', 'Yes', 'No', 'No', 'No']
# 将品牌转换为数字
X_dict = []
for i in range(len(X)):
X_dict.append({'brand': X[i][0], 'price': X[i][1]})
brand_dict = {'Adidas': 0, 'Nike': 1, 'Puma': 2}
for i in range(len(X_dict)):
X_dict[i]['brand'] = brand_dict[X_dict[i]['brand']]
# 拆分数据集为训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X_dict, y, test_size=0.2, random_state=42)
# 构建决策树模型
clf = DecisionTreeClassifier()
clf.fit(X_train, y_train)
# 使用测试集评估模型性能
y_pred = clf.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
print('Accuracy:', accuracy)
```
运行以上代码,即可得到模型的准确率,用于对新的鞋子销售进行预测。
阅读全文