在PHP中構建決策樹可以使用遞歸函數來實現。以下是一個簡單的示例代碼:
<?php
// 定義一個簡單的決策樹結構
$decision_tree = [
'outlook' => [
'sunny' => [
'humidity' => [
'high' => 'no',
'normal' => 'yes'
]
],
'overcast' => 'yes',
'rainy' => [
'windy' => [
'true' => 'no',
'false' => 'yes'
]
]
]
];
// 定義遞歸函數來遍歷決策樹并返回結果
function predict($data, $tree) {
foreach ($tree as $key => $value) {
if (is_array($value)) {
if (isset($data[$key])) {
return predict($data, $value[$data[$key]]);
}
} else {
return $value;
}
}
}
// 測試數據
$data = [
'outlook' => 'sunny',
'humidity' => 'normal'
];
// 預測結果
$result = predict($data, $decision_tree);
echo $result; // 輸出:yes
在上面的示例中,我們定義了一個簡單的決策樹結構,并使用遞歸函數predict
來遍歷決策樹并返回結果。我們傳入測試數據$data
,并輸出預測結果。通過遞歸函數的調用,我們可以根據決策樹的規則來預測結果。您可以根據自己的需求和數據結構來調整和擴展這個示例代碼。