R에서 다항식 회귀 곡선을 그리는 방법


다항식 회귀는 예측 변수와 응답 변수 간의 관계가 비선형일 때 사용하는 회귀 기법입니다.

이 튜토리얼에서는 R에서 다항식 회귀 곡선을 그리는 방법을 설명합니다.

관련 항목: 가장 일반적인 7가지 회귀 유형

예: R에서 다항식 회귀 곡선 그리기

다음 코드는 다항식 회귀 모델을 데이터 세트에 맞춘 다음 산점도의 원시 데이터에 다항식 회귀 곡선을 그리는 방법을 보여줍니다.

 #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 )

R에 다항식 회귀 곡선을 그립니다.

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 )

cex 인수는 텍스트의 글꼴 크기를 제어합니다. 기본값은 1이므로 텍스트를 더 쉽게 읽을 수 있도록 1.3 값을 사용하기로 결정했습니다.

추가 리소스

다항식 회귀 소개
Excel에서 다항식 곡선을 맞추는 방법
Python에서 다항식 회귀를 수행하는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다