So verwenden sie regsubsets() in r zur modellauswahl


Sie können die Funktion regsubsets() aus dem Leaps- Paket in R verwenden, um die Teilmenge der Prädiktorvariablen zu finden, die das beste Regressionsmodell erzeugt.

Das folgende Beispiel zeigt, wie Sie diese Funktion in der Praxis nutzen können.

Beispiel: Verwendung von regsubsets() zur Modellauswahl in R

Für dieses Beispiel verwenden wir den in R integrierten mtcars- Datensatz, der Messungen zu 11 verschiedenen Attributen für 32 verschiedene Autos enthält.

 #view first six rows of mtcars dataset
head(mtcars)

                   mpg cyl disp hp drat wt qsec vs am gear carb
Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
Valiant 18.1 6 225 105 2.76 3,460 20.22 1 0 3 1

Angenommen, wir möchten ein Regressionsmodell anpassen, das hp als Antwortvariable und die folgenden potenziellen Prädiktorvariablen verwendet:

  • mpg
  • Gewicht
  • Scheisse
  • qsec

Wir können die Funktion regsubsets() aus dem Leaps- Paket verwenden, um eine umfassende Suche durchzuführen, um das beste Regressionsmodell zu finden:

 library (leaps)

#find best regression model
bestSubsets <- regsubsets(hp ~ mpg + wt + drat + qsec, data=mtcars)

#view results
summary(bestSubsets)

Subset selection object
Call: regsubsets.formula(hp ~ mpg + wt + drat + qsec, data = mtcars)
4 Variables (and intercept)
     Forced in Forced out
mpg FALSE FALSE
wt FALSE FALSE
drat FALSE FALSE
qsec FALSE FALSE
1 subsets of each size up to 4
Selection Algorithm: exhaustive
         mpg wt drat qsec
1 ( 1 ) "*" " " " " " " 
2 (1) " " "*" " " "*" 
3 ( 1 ) “*” “*” “ “ “*” 
4 ( 1 ) “*” “*” “*” “*”

Die Sterne ( * ) am unteren Rand des Ergebnisses geben an, welche Prädiktorvariablen für jedes mögliche Modell mit einer unterschiedlichen Anzahl von Prädiktorvariablen zum besten Regressionsmodell gehören.

So interpretieren Sie das Ergebnis:

Für ein Modell mit einer einzelnen Prädiktorvariablen wird das beste Regressionsmodell mit mpg als Prädiktorvariable erstellt.

Für ein Modell mit zwei Prädiktorvariablen wird das beste Regressionsmodell unter Verwendung von wt und qsec als Prädiktorvariablen erstellt.

Für ein Modell mit drei Prädiktorvariablen wird das beste Regressionsmodell unter Verwendung von mpg , wt und qsec als Prädiktorvariablen erstellt.

Für ein Modell mit vier Prädiktorvariablen wird das beste Regressionsmodell unter Verwendung von mpg , wt , drat und qsec als Prädiktorvariablen erstellt.

Beachten Sie, dass Sie für jedes Modell auch die folgenden Metriken extrahieren können:

Beispielsweise können wir die folgende Syntax verwenden, um den angepassten R-Quadrat-Wert für jedes der vier besten Modelle zu extrahieren:

 #view adjusted R-squared value of each model
summary(bestSubsets)$adjr2

[1] 0.5891853 0.7828169 0.7858829 0.7787005

Aus dem Ergebnis können wir sehen:

  • Der angepasste R-Quadrat-Wert für das Modell mit mpg als Prädiktorvariable beträgt 0,589 .
  • Der angepasste R-Quadrat-Wert für das Modell mit wt und qsec als Prädiktorvariablen beträgt 0,783 .
  • Der angepasste R-Quadrat-Wert für das Modell mit mp g , wt und qsec als Prädiktorvariablen beträgt 0,786 .
  • Der angepasste R-Quadrat-Wert für das Modell mit mpg , wt , drat und qsec als Prädiktorvariablen beträgt 0,779 .

Diese Werte geben uns eine Vorstellung davon, wie gut der Satz von Prädiktorvariablen den Wert der Antwortvariablen vorhersagte, angepasst basierend auf der Anzahl der Prädiktorvariablen im Modell.

Zusätzliche Ressourcen

Die folgenden Tutorials erklären, wie Sie andere häufige Aufgaben in R ausführen:

So führen Sie eine multiple lineare Regression in R durch
So führen Sie eine stückweise Regression in R durch
So führen Sie eine Spline-Regression in R durch

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert