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 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录