W3Cschool
恭喜您成為首批注冊用戶
獲得88經驗值獎勵
決策樹是以樹的形式表示選擇及其結果的圖。圖中的節(jié)點表示事件或選擇,并且圖的邊緣表示決策規(guī)則或條件。它主要用于使用R的機器學習和數據挖掘應用程序。
決策樹的使用的例子是 - 預測電子郵件是垃圾郵件或非垃圾郵件,預測腫瘤癌變,或者基于這些因素預測貸款的信用風險。通常,使用觀測數據(也稱為訓練數據)來創(chuàng)建模型。然后使用一組驗證數據來驗證和改進模型。 R具有用于創(chuàng)建和可視化決策樹的包。對于新的預測變量集合,我們使用此模型來確定R包“party”用于創(chuàng)建決策樹。
在R語言控制臺中使用以下命令安裝軟件包。您還必須安裝相關軟件包(如果有)。
install.packages("party")
“party”包具有用于創(chuàng)建和分析決策樹的函數ctree()。
在R中創(chuàng)建決策樹的基本語法是 -
ctree(formula, data)
以下是所使用的參數的描述 -
formula是描述預測變量和響應變量的公式。
data是所使用的數據集的名稱。
我們將使用名為readingSkills的R內置數據集來創(chuàng)建決策樹。 它描述了某人的readingSkills的分數,如果我們知道變量“年齡”,“shoesize”,“分數”,以及該人是否為母語者。
這里是示例數據。
# Load the party package. It will automatically load other dependent packages. library(party) # Print some records from data set readingSkills. print(head(readingSkills))
當我們執(zhí)行上面的代碼,它產生以下結果及圖表 -
nativeSpeaker age shoeSize score 1 yes 5 24.83189 32.29385 2 yes 6 25.95238 36.63105 3 no 11 30.42170 49.60593 4 yes 7 28.66450 40.28456 5 yes 11 31.88207 55.46085 6 yes 10 30.07843 52.83124 Loading required package: methods Loading required package: grid ............................... ...............................
我們將使用ctree()函數創(chuàng)建決策樹并查看其圖形。
# Load the party package. It will automatically load other dependent packages. library(party) # Create the input data frame. input.dat <- readingSkills[c(1:105),] # Give the chart file a name. png(file = "decision_tree.png") # Create the tree. output.tree <- ctree( nativeSpeaker ~ age + shoeSize + score, data = input.dat) # Plot the tree. plot(output.tree) # Save the file. dev.off()
當我們執(zhí)行上面的代碼,它產生以下結果 -
null device 1 Loading required package: methods Loading required package: grid Loading required package: mvtnorm Loading required package: modeltools Loading required package: stats4 Loading required package: strucchange Loading required package: zoo Attaching package: ‘zoo’ The following objects are masked from ‘package:base’: as.Date, as.Date.numeric Loading required package: sandwich
從上面顯示的決策樹,我們可以得出結論,其readingSkills分數低于38.3和年齡超過6的人不是一個母語者。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: