Настройка узлов дерева регрессии
Я построил следующее дерево регрессии с помощью пакета rpart. Мне пришлось переименовать переменные в алфавитном порядке, потому что оригинальные имена были длинными. Теперь, когда я выполнил анализ, я бы хотел, чтобы (соответствующие) 4 разбиения были переименованы в их оригинальные длинные имена. Как получить доступ к разделенным меткам? Я знаю, что это возможно для пакета rpart.plot, но я хотел бы придерживаться макета сюжета partykit, потому что я хочу, чтобы boxplot находился в узлах.
Любое решение этого?
1 ответ
Я бы порекомендовал не настраивать это потом, а синхронизировать имена переменных. Но для изменения меток, используемых на графиках, вам нужно только изменить names(party_object$data)
,
В качестве простого воспроизводимого примера рассмотрим iris
данные:
library("rpart")
library("partykit")
data("iris", package = "datasets")
names(iris)
## [1] "Sepal.Length" "Sepal.Width" "Petal.Length" "Petal.Width" "Species"
Теперь мы изменим имена в данных на что-то сокращенное:
names(iris) <- c("SL", "SW", "PL", "PW", "S")
А потом вырасти rpart()
дерево и преобразовать его в party
:
rp <- rpart(S ~ SL + SW + PL + PW, data = iris)
py <- as.party(rp)
plot(py)
Тогда мы можем просто пометить переменные в $data
(обратите внимание, что порядок изменился, ответ указан первым) и снова выведите график:
names(py$data)
## [1] "S" "SL" "SW" "PL" "PW"
names(py$data) <- c("species", "sepal_length", "sepal_width", "petal_length", "petal_width")
plot(py)
Большинство вещей должно работать совершенно нормально с этим твиком party
объект. Тем не менее, имена переменных в formula
и data
сейчас не синхронизированы. Это может привести к проблемам в некоторых условиях. Но заговор должен быть в порядке.