Hoe een polynomiale regressiecurve in r uit te zetten


Polynomiale regressie is een regressietechniek die we gebruiken wanneer de relatie tussen een voorspellende variabele en een responsvariabele niet-lineair is.

In deze tutorial wordt uitgelegd hoe u een polynomiale regressiecurve in R kunt plotten.

Gerelateerd: De 7 meest voorkomende soorten regressie

Voorbeeld: een polynomiale regressiecurve uitzetten in R

De volgende code laat zien hoe u een polynoomregressiemodel aan een gegevensset kunt aanpassen en vervolgens de polynomiale regressiecurve op de onbewerkte gegevens in een spreidingsdiagram kunt plotten:

 #define data
x <- runif(50, 5, 15)
y <- 0.1*x^3 - 0.5 * x^2 - x + 5 + rnorm(length(x),0,10) 
 
#plot x vs. y
plot(x, y, pch= 16 , cex= 1.5 ) 
 
#fit polynomial regression model
fit <- lm(y ~ x + I(x^2) + I(x^3))
 
#use model to get predicted values
pred <- predict(fit)
ix <- sort(x, index. return = T )$ix

#add polynomial curve to plot
lines(x[ix], pred[ix], col=' red ', lwd= 2 )

plot polynomiale regressiecurve in R

We kunnen ook de gepaste polynomiale regressievergelijking aan de plot toevoegen met behulp van de functie text() :

 #define data
x <- runif(50, 5, 15)
y <- 0.1*x^3 - 0.5 * x^2 - x + 5 + rnorm(length(x),0,10) 
 
#plot x vs. y
plot(x, y, pch=16, cex=1.5) 
 
#fit polynomial regression model
fit <- lm(y ~ x + I(x^2) + I(x^3))
 
#use model to get predicted values
pred <- predict(fit)
ix <- sort(x, index. return = T )$ix

#add polynomial curve to plot
lines(x[ix], pred[ix], col=' red ', lwd= 2 )

#get model coefficients
coeff <- round(fit$coefficients, 2)

#add fitted model equation to plot
text(9, 200 , paste("Model: ", coeff[1], " + ", coeff[2],
                    "*x", "+", coeff[3], "*x^2", "+", coeff[4], "*x^3"), cex= 1.3 )

Merk op dat het cex- argument de lettergrootte van de tekst bepaalt. De standaardwaarde is 1, daarom hebben we ervoor gekozen een waarde van 1,3 te gebruiken om de tekst gemakkelijker leesbaar te maken.

Aanvullende bronnen

Een inleiding tot polynomiale regressie
Hoe een polynomiale curve in Excel te passen
Hoe polynomiale regressie uit te voeren in Python

Einen Kommentar hinzufügen

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