西瓜数据集分类:使用决策树算法进行预测
import numpy as np from sklearn.preprocessing import LabelEncoder from sklearn.tree import DecisionTreeClassifier
特征和标签数据
features = ['色泽', '根蒂', '敲声', '纹理', '脐部', '触感'] dataset = [ ['青绿', '蜷缩', '浊响', '清晰', '凹陷', '硬滑', '是'], ['乌黑', '蜷缩', '沉闷', '清晰', '凹陷', '硬滑', '是'], ['乌黑', '蜷缩', '浊响', '清晰', '凹陷', '硬滑', '是'], ['青绿', '蜷缩', '沉闷', '清晰', '凹陷', '硬滑', '是'], ['浅白', '蜷缩', '浊响', '清晰', '凹陷', '硬滑', '是'], ['青绿', '稍蜷', '浊响', '清晰', '稍凹', '软粘', '是'], ['乌黑', '稍蜷', '浊响', '稍糊', '稍凹', '软粘', '是'], ['乌黑', '稍蜷', '浊响', '清晰', '稍凹', '硬滑', '是'], ['乌黑', '稍蜷', '沉闷', '稍糊', '稍凹', '硬滑', '否'], ['青绿', '硬挺', '清脆', '清晰', '平坦', '软粘', '否'], ['浅白', '硬挺', '清脆', '模糊', '平坦', '硬滑', '否'], ['浅白', '蜷缩', '浊响', '模糊', '平坦', '软粘', '否'], ['青绿', '稍蜷', '浊响', '稍糊', '凹陷', '硬滑', '否'], ['浅白', '稍蜷', '沉闷', '稍糊', '凹陷', '硬滑', '否'], ['乌黑', '稍蜷', '浊响', '清晰', '稍凹', '软粘', '否'], ['浅白', '蜷缩', '浊响', '模糊', '平坦', '硬滑', '否'], ['青绿', '蜷缩', '沉闷', '稍糊', '稍凹', '硬滑', '否']]
特征编码
le = LabelEncoder() X = np.array(dataset)[:, :-1] y = le.fit_transform(np.array(dataset)[:, -1])
构建决策树模型
clf = DecisionTreeClassifier() clf.fit(X, y)
预测新数据
new_data = [['青绿', '蜷缩', '浊响', '清晰', '凹陷', '硬滑']] new_data_encoded = le.transform(new_data) prediction = clf.predict(new_data_encoded)
输出预测结果
print(le.inverse_transform(prediction))
原文地址: https://www.cveoy.top/t/topic/pcZX 著作权归作者所有。请勿转载和采集!