编写一段构建决策树模型的代码,基于观看河北梆子演出的观众数据,预测哪些因素对观众观看河北梆子影响较大
时间: 2024-09-08 15:04:42 浏览: 57
假设我们正在使用Python的Scikit-Learn库来编写一个简单的决策树模型。首先,我们需要加载数据并进行必要的预处理。这里是一个基本的例子:
```python
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.tree import DecisionTreeClassifier
from sklearn.metrics import accuracy_score
# 假设data.csv包含了观众数据
df = pd.read_csv('data.csv')
# 定义特征列和目标变量
features = df[['age', 'gender', 'income', 'education_level', 'hobbies']]
target = df['bgbz_view']
# 数据预处理(缺失值处理、编码等)
# 这里假设数据已经清洗好,没有缺失值
X_train, X_test, y_train, y_test = train_test_split(features, target, 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(f"Accuracy: {accuracy * 100:.2f}%")
# 获取特征的重要性
feature_importance = clf.feature_importances_
top_features = sorted(zip(features.columns, feature_importance), key=lambda x: x[1], reverse=True)
print("Top features for predicting BGBZ views:")
for i, (feature, importance) in enumerate(top_features, start=1):
print(f"{i}. {feature}: Importance = {importance * 100:.2f}%")
```
在这个例子中,代码构建了一个决策树模型,训练它来预测观众是否会观看河北梆子,并展示了最重要的预测因素。
阅读全文