Logarithmische regression in r (schritt für schritt)


Bei der logarithmischen Regression handelt es sich um einen Regressionstyp, der zur Modellierung von Situationen verwendet wird, in denen sich Wachstum oder Rückgang zunächst schnell beschleunigen und sich dann mit der Zeit verlangsamen.

Die folgende Grafik zeigt beispielsweise ein Beispiel für einen logarithmischen Zerfall:

Für diese Art von Situation könnte die Beziehung zwischen einer Prädiktorvariablen und einer Antwortvariablen mithilfe einer logarithmischen Regression gut modelliert werden.

Die Gleichung für ein logarithmisches Regressionsmodell hat die folgende Form:

y = a + b*ln(x)

Gold:

  • y: die Antwortvariable
  • x: die Vorhersagevariable
  • a, b: die Regressionskoeffizienten, die die Beziehung zwischen x und y beschreiben

Das folgende Schritt-für-Schritt-Beispiel zeigt, wie eine logarithmische Regression in R durchgeführt wird.

Schritt 1: Erstellen Sie die Daten

Erstellen wir zunächst gefälschte Daten für zwei Variablen: x und y :

 x=1:15

y=c(59, 50, 44, 38, 33, 28, 23, 20, 17, 15, 13, 12, 11, 10, 9.5)

Schritt 2: Visualisieren Sie die Daten

Als Nächstes erstellen wir ein kurzes Streudiagramm, um die Beziehung zwischen x und y zu visualisieren:

 plot(x, y) 

Aus der Grafik können wir erkennen, dass es ein klares logarithmisches Abklingmuster zwischen den beiden Variablen gibt. Der Wert der Antwortvariablen y nimmt zunächst schnell ab und verlangsamt sich dann mit der Zeit.

Daher erscheint es sinnvoll, eine logarithmische Regressionsgleichung anzuwenden, um die Beziehung zwischen den Variablen zu beschreiben.

Schritt 3: Passen Sie das logarithmische Regressionsmodell an

Als Nächstes verwenden wir die Funktion lm() , um ein logarithmisches Regressionsmodell anzupassen, wobei wir den natürlichen Logarithmus von x als Prädiktorvariable und y als Antwortvariable verwenden.

 #fit the model
model <- lm(y ~ log (x))

#view the output of the model
summary(model)

Call:
lm(formula = y ~ log(x))

Residuals:
   Min 1Q Median 3Q Max 
-4.069 -1.313 -0.260 1.127 3.122 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept) 63.0686 1.4090 44.76 1.25e-15 ***
log(x) -20.1987 0.7019 -28.78 3.70e-13 ***
---
Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 2.054 on 13 degrees of freedom
Multiple R-squared: 0.9845, Adjusted R-squared: 0.9834 
F-statistic: 828.2 on 1 and 13 DF, p-value: 3.702e-13

Der Gesamt-F-Wert des Modells beträgt 828,2 und der entsprechende p-Wert ist extrem niedrig (3,702e-13), was darauf hinweist, dass das Modell insgesamt nützlich ist.

Anhand der Koeffizienten aus der Ausgabetabelle können wir sehen, dass die angepasste logarithmische Regressionsgleichung lautet:

y = 63,0686 – 20,1987 * ln(x)

Wir können diese Gleichung verwenden, um die Antwortvariable y basierend auf dem Wert der Prädiktorvariablen x vorherzusagen. Wenn beispielsweise x = 12, würden wir vorhersagen, dass y 12,87 betragen würde:

y = 63,0686 – 20,1987 * ln(12) = 12,87

Bonus: Fühlen Sie sich frei, diesen Online-Rechner für die logarithmische Regression zu verwenden, um die logarithmische Regressionsgleichung für einen bestimmten Prädiktor und eine bestimmte Antwortvariable automatisch zu berechnen.

Schritt 4: Visualisieren Sie das logarithmische Regressionsmodell

Schließlich können wir ein schnelles Diagramm erstellen, um zu visualisieren, wie gut das logarithmische Regressionsmodell zu den Daten passt:

 #plot x vs. y
plot(x, y)

#define x-values to use for regression line
x=seq(from= 1 , to= 15 , length. out = 1000 )

#use the model to predict the y-values based on the x-values
y=predict(model,newdata=list(x=seq(from= 1 ,to= 15 ,length. out = 1000 )),
          interval=" confidence ")

#add the fitted regression line to the plot (lwd specifies the width of the line)
matlines(x,y, lwd= 2 )

Logarithmische Regression in R

Wir können sehen, dass das logarithmische Regressionsmodell diesen speziellen Datensatz gut anpasst.

Zusätzliche Ressourcen

So führen Sie eine einfache lineare Regression in R durch
So führen Sie eine multiple lineare Regression in R durch
So führen Sie eine quadratische Regression in R durch
So führen Sie eine exponentielle Regression in R durch
So führen Sie eine Polynomregression in R durch

Einen Kommentar hinzufügen

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