2012-09-26 4 views
1

R (그리고 정직한 통계)은 아직 완전히 새롭지 만 현재는 단순 선형 회귀 모형에만 사용했습니다. 그러나 이제는 내 데이터 세트 중 하나가 거꾸로 된 U 패턴을 명확하게 보여줍니다. 나는이 데이터에 대해 2 차 회귀 분석을해야한다고 생각하지만 어떻게 확신 할 수는 없다. 지금까지 시도한 것은 다음과 같습니다.비선형 회귀 분석 'abline'

independentvar2 <- independentvar^2 
    regression <- lm(dependentvar ~ independentvar + independentvar2) 
    summary (regression) 
    plot (independentvar, dependentvar) 
    abline (regression) 

정상적인 선형 회귀에서는 작동하지만 비선형 회귀에서는 작동하지 않습니다. 선형 모델을 의미한다고 생각했기 때문에 lm 함수를 사용할 수 있습니까?

감사 버트

+2

선형 모델 매개 변수의 선형이 아닌 (반드시) 직선을 의미한다. 다항식은 선형 모델입니다. 그러나,'abline'은 직선을 그리는데 단지 2 차 함수로는 불가능합니다. 대신에'? curve'를보십시오. Google 검색을 수행하는 경우 예제 코드를 쉽게 찾아야합니다. – Roland

+0

비선형 회귀를 사용하여 선형 회귀 문제를 해결하는 이유는 무엇입니까? 게다가 모델에 상수가 없거나 다른 문제가있는 것처럼 보입니다. –

+0

@woodchips 지정한 모델에 절편이 있습니다 ('lm'의 기본값). – Roland

답변

6

이 예는 @ 톰 Liptrot에 의해 this SO post에서입니다.

plot(speed ~ dist, data = cars) 
fit1 = lm(speed ~ dist, cars) #fits a linear model 
plot(speed ~ dist, data = cars) 
abline(fit1) #puts line on plot 
fit2 = lm(speed ~ I(dist^2) + dist, cars) #fits a model with a quadratic term 
fit2line = predict(fit2, data.frame(dist = -10:130)) 

enter image description here

+2

+1 이것은 R의 모델링 기능을 가진 정식 관용구입니다. 공변 (covariates)의 범위에 걸쳐 새로운 데이터의 순차적 집합에 대해'predict()'메소드를 사용하십시오. (이것은 부분 공백 효과와 같이 단지 하나의 공변량 이상일 때 분명히 좀 더 복잡해집니다.) –