matlab决策树代码

以下是一个简单的 MATLAB 决策树代码示例:

% 导入数据
data = readtable(‘data.csv’);

% 将数据分为训练集和测试集
[trainData, testData] = splitData(data, 0.7);

% 训练决策树模型
tree = fitctree(trainData(:,1:end-1), trainData(:,end));

% 预测测试集
predictions = predict(tree, testData(:,1:end-1));

% 计算准确率
accuracy = sum(predictions == testData(:,end)) / size(testData,1);

% 可视化决策树
view(tree);

% 分割数据函数
function [trainData, testData] = splitData(data, trainRatio)
% 随机打乱数据
data = data(randperm(size(data,1)),:);

% 计算训练集和测试集的大小
trainSize = round(size(data,1) * trainRatio);
testSize = size(data,1) - trainSize;

% 分割数据
trainData = data(1:trainSize,:);
testData = data(trainSize+1:end,:);

end

这个代码示例中,首先导入了一个名为 “data.csv” 的数据集,并将其分为训练集和测试集。然后使用 fitctree 函数训练了一个决策树模型,并使用 predict 函数对测试集进行预测。最后,计算了预测准确率,并使用 view 函数可视化了决策树。

此外,代码中还包含一个名为 splitData 的函数,用于将数据集分为训练集和测试集。该函数首先随机打乱数据集,然后根据指定的训练集比例计算训练集和测试集的大小,并将数据集分割为训练集和测试集。

需要注意的是,这只是一个简单的决策树代码示例,实际应用中可能需要更复杂的数据预处理、特征工程和模型调参等步骤。