Mit der R-Visualisierungsbibliothek ggplot2 können Sie ein angepasstes lineares Regressionsmodell mit der folgenden Grundsyntax zeichnen:
ggplot(data,aes(x, y)) +
geom_point() +
geom_smooth(method='lm')
Das folgende Beispiel zeigt, wie diese …
Die logistische Regression ist eine statistische Methode, mit der wir ein Regressionsmodell anpassen, wenn die Antwortvariable binär ist. Um zu beurteilen, wie gut ein logistisches Regressionsmodell zu einem Datensatz passt, können wir die folgenden zwei Metriken betrachten:
Eine einfache Möglichkeit, diese beiden Metriken zu visualisieren, besteht darin, eine ROC-Kurve zu erstellen. Hierbei handelt es sich um ein Diagramm, das die Sensitivität und Spezifität eines logistischen Regressionsmodells anzeigt.
In diesem Tutorial wird erläutert, wie Sie mit dem Visualisierungspaket ggplot2 eine ROC-Kurve in R erstellen und interpretieren.
Angenommen, wir passen das folgende logistische Regressionsmodell in R an:
#laden des Standarddatensatzes aus ISLR
data <- ISLR::Default
#Datensatz in Trainings- und Testsatz aufteilen
set.seed(1)
sample <- sample(c(TRUE, FALSE), nrow(data), replace=TRUE, prob=c(0.7,0.3))
train <- data[sample, ]
test <- data[!sample, ]
# Anpassung des logistischen Regressionsmodells an das Trainingsset
model <- glm(default~student+balance+income, family="binomial", data=train)
#Verwenden Sie das Modell, um Vorhersagen für den Testsatz zu treffen
predicted <- predict(model, test, type="response")
Um zu veranschaulichen, wie gut das logistische Regressionsmodell auf dem Testsatz abschneidet, können wir mit der Funktion ggroc() aus dem pROC-Paket ein ROC-Diagramm erstellen:
# notwendige Pakete laden
library(ggplot2)
library(pROC)
# Objekt zum Diagramm definieren
rocobj <- roc(test$default, predicted)
# ROC-Plot erstellen
ggroc(rocobj)
Die y-Achse zeigt die Empfindlichkeit (die wahre positive Rate) des Modells und die x-Achse zeigt die Spezifität (die wahre negative Rate) des Modells.
Beachten Sie, dass wir dem Plot etwas Stil hinzufügen und auch einen Titel bereitstellen können, der die AUC (Bereich unter der Kurve) für den Plot enthält:
# notwendige Pakete laden
library(ggplot2)
library(pROC)
#Definieren Sie das Objekt, um die AUC zu zeichnen und zu berechnen
rocobj <- roc(test$default, predicted)
auc <- round(auc(test$default, predicted),4)
# ROC-Plot erstellen
ggroc(rocobj, colour = 'steelblue', size = 2) +
ggtitle(paste0('ROC Curve ', '(AUC = ', auc, ')'))
Beachten Sie, dass wir auch das Theme des Plots ändern können:
# ROC-Plot mit dem minimal theme erstellen
ggroc(rocobj, colour = 'steelblue', size = 2) +
ggtitle(paste0('ROC Curve ', '(AUC = ', auc, ')')) +
theme_minimal()
In diesem Artikel finden Sie eine Anleitung zu den besten ggplot2-Themen.
Mit der R-Visualisierungsbibliothek ggplot2 können Sie ein angepasstes lineares Regressionsmodell mit der folgenden Grundsyntax zeichnen:
ggplot(data,aes(x, y)) +
geom_point() +
geom_smooth(method='lm')
Das folgende Beispiel zeigt, wie diese …
Die Datenvisualisierungsbibliothek ggplot2 macht es einfach, schöne Diagramme in R von Grund auf neu zu erstellen.
gplot2 bietet jedoch keinen Titel für Diagramme, es sei denn, Sie geben einen an …