Как дерево узнает, строить ли дерево классификации или регрессии? - PullRequest
1 голос
/ 19 марта 2020

Я учусь строить деревья классификации / регрессии и хотел бы понять, как функция дерева знает, строить ли дерево классификации или регрессии.

Следующее строит дерево классификации:

library(tree)
library(ISLR)
library(dplyr)

Carseats <- Carseats %>% mutate(High = factor(ifelse(Sales <= 8, "No", "Yes")))
tree.carseats <- tree(High~ . -Sales, Carseats)

Пока создается дерево регрессии:

library(MASS)
set.seed(1)
tree.boston=tree(medv~ .,Boston)

Для меня оба вызова дерева выглядят одинаково. Определяет ли он это на основе типа цели, которая должна быть предсказана?

1 Ответ

2 голосов
/ 19 марта 2020

Хотя я согласен с Duckmayr, я обнаружил почти скрытое в документации по https://cran.r-project.org/web/packages/tree/tree.pdf, что в функции tree аргумент formula описывается как:

"A formula expression. The left-hand-side (response) should be either a numerical vector when a regression tree will be fitted or a factor, when a classification tree is produced."

Таким образом ваше предположение было верным, если целью является фактор, то устанавливается дерево классификации, а в противном случае - дерево регрессии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...