Wenn man sich Species (Ihre Antwortvariable) in der iris
Daten-Set, werden Sie sehen, dass es ein Faktor mit 3 Ebenen:
> unique(iris$Species)
[1] setosa versicolor virginica
Levels: setosa versicolor virginica
Da die Werte treten in der obigen Reihenfolge: setosa, versicolor, virginica, der Ausgang des Entscheidungsbaums ist die Wahrscheinlichkeit für jede dieser Ebenen und diese Wahrscheinlichkeit summiert sich zu 1.
Um dies zu überprüfen, schauen Sie auf der linken Seite Ihres t ree. Es teilt sich unter Petal.Length <= 1.9
. Wie ist die Verteilung der Arten, wenn Petal.Length <= 1.9
?
prop.table(table(iris[iris$Petal.Length <= 1.9,]$Species))
setosa versicolor virginica
1 0 0
In dem obigen Code, der Teilmenge I auf Petal.Length <= 1.9
, dann Blick auf die Verteilung der Arten (daher prop.table(table(...))
). 100% ist Setosa. Ein anderes Beispiel: Rechter Split (Petal.Length > 1.9
) und linker Split (Petal.Width <= 1.6
). Das Ergebnis ist:
prop.table(table(iris[iris$Petal.Length > 1.9 & iris$Petal.Width <= 1.6,]$Species))
setosa versicolor virginica
0.00000000 0.92307692 0.07692308
Meine Nummern hier stimmen nicht mit Ihren überein. Ich glaube, Sie haben einen Trainingssatz von 100 Zeilen, während ich den gesamten Datensatz verwende. Dies könnte der Grund für die Diskrepanz sein. Korrigiere mich, wenn ich falsch liege.
Sie benötigen statistische Ausbildung. Das ist nicht wirklich eine erklärte Aufgabe von SO. –