데이비드 릴리스박사

파트 3 에서는 최소 제곱 회귀를 수행하기 위해 루멘()명령을 사용했습니다. 파트 4 에서는 회귀 모델의 고급 측면을 살펴보고 연구가 제공하는 것을 볼 것입니다.

데이터에서 비선형성을 확인하는 한 가지 방법은 다항식 모델을 적합하게하고 다항식 모델이 선형 모델보다 데이터에 더 잘 맞는지 확인하는 것입니다. 그러나 변수 간의 관계가 본질적으로 다항식이라고 믿을만한 이유가 있기 때문에 2 차 또는 그 이상의 모델을 적합하게 할 수도 있습니다. 9525>

우리는 시간이 지남에 따라 감소하는 변수의 카운트 데이터 세트를 사용합니다. 다음 데이터를 잘라내어 작업 영역에 붙여 넣습니다.

A <- structure(list(Time = c(0, 1, 2, 4, 6, 8, 9, 10, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 24, 25, 26, 27, 28, 29, 30), Counts = c(126.6, 101.8, 71.6, 101.6, 68.1, 62.9, 45.5, 41.9, 46.3, 34.1, 38.2, 41.7, 24.7, 41.5, 36.6, 19.6, 22.8, 29.6, 23.5, 15.3, 13.4, 26.8, 9.8, 18.8, 25.9, 19.3)), .Names = c("Time", "Counts"),row.names = c(1L, 2L, 3L, 5L, 7L, 9L, 10L, 11L, 12L, 13L, 14L, 15L, 16L, 17L, 19L, 20L, 21L, 22L, 23L, 25L, 26L, 27L, 28L, 29L, 30L, 31L),class = "data.frame")

이름으로 모든 변수를 직접 참조 할 수 있도록 전체 데이터 세트를 첨부합시다.

attach(A)
names(A)

첫째,선형 모델을 설정하자,정말 우리가 먼저 플롯 만 다음 회귀를 수행해야하지만.

linear.model <-lm(Counts ~ Time)

이제 요약()명령을 통해 회귀 분석에 대한 자세한 정보를 얻습니다.

summary(linear.model)Call:lm(formula = Counts ~ Time)Residuals: Min 1Q Median 3Q Max -20.084 -9.875 -1.882 8.494 39.445 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 87.1550 6.0186 14.481 2.33e-13 ***Time -2.8247 0.3318 -8.513 1.03e-08 ***---Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1Residual standard error: 15.16 on 24 degrees of freedomMultiple R-squared: 0.7512, Adjusted R-squared: 0.7408 F-statistic: 72.47 on 1 and 24 DF, p-value: 1.033e-08

이 모델은 분산의 74%이상을 설명하고 절편 및 독립 변수에 대해 매우 중요한 계수를 가지며 매우 중요한 전체 모델 피-값. 그러나 시간이 지남에 따라 카운트를 플롯하고 선형 모델을 겹쳐 봅시다.

plot(Time, Counts, pch=16, ylab = "Counts ", cex.lab = 1.3, col = "red" )abline(lm(Counts ~ Time), col = "blue")

tn_image001

tn_image001

여기 구문.실험실=1.3 좋은 크기의 축 라벨을 생산.

모형이 좋아 보이지만 선형 모형에 의해 잘 설명되지 않은 곡률이 플롯에 있음을 알 수 있습니다. 이제 우리는 시간의 2 차 모형을 맞춥니다. 우리는 변수 시간의 제곱 인 시간 2 라는 변수를 만듭니다.

Time2 <- Time^2
quadratic.model <-lm(Counts ~ Time + Time2)

선형 모델을 두 개 이상의 예측 변수로 맞추는 데 관련된 구문에 유의하십시오. 우리는 각 예측 변수를 포함하고 그들 사이에 더하기 기호를 넣습니다.

summary(quadratic.model)Call:lm(formula = Counts ~ Time + Time2)Residuals: Min 1Q Median 3Q Max -24.2649 -4.9206 -0.9519 5.5860 18.7728 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 110.10749 5.48026 20.092 4.38e-16 ***Time -7.42253 0.80583 -9.211 3.52e-09 ***Time2 0.15061 0.02545 5.917 4.95e-06 ***---Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1Residual standard error: 9.754 on 23 degrees of freedomMultiple R-squared: 0.9014, Adjusted R-squared: 0.8928F-statistic: 105.1 on 2 and 23 DF, p-value: 2.701e-12

2 차 모델은 본질적으로 두 변수의 선형 모델이며,그 중 하나는 다른 변수의 제곱입니다. 우리는 선형 모델이 아무리 좋았더라도 2 차 모델이 더 잘 수행되어 분산의 15%를 추가로 설명한다는 것을 알 수 있습니다. 이제 0 에서 30 초 사이의 시간 값 격자를 0.1 초 단위로 설정하여 2 차 모델을 플롯해 보겠습니다.

timevalues <- seq(0, 30, 0.1)
predictedcounts <- predict(quadratic.model,list(Time=timevalues, Time2=timevalues^2))
plot(Time, Counts, pch=16, xlab = "Time (s)", ylab = "Counts", cex.lab = 1.3, col = "blue")

이제 우리는 선을 사용하여 플롯에 이차 모델을 포함()명령.

lines(timevalues, predictedcounts, col = "darkgreen", lwd = 3)

tn_image002

2 차 모델은 선형 모델보다 데이터에 더 잘 맞는 것처럼 보입니다. 우리는 우리의 다음 블로그 게시물에 피팅 곡선 모델을 다시 볼 것이다.

우리의 전체 연구 튜토리얼 시리즈와 다른 블로그 게시물을 참조하십시오.

저자에 관하여:데이비드 릴리스는 많은 연구자와 통계에 연구를 가르쳤다. 그의 회사,시그마 통계 및 연구 제한,모두 온라인 교육과 연구에 대면 워크샵을 제공합니다,그리고 연구 데이비드 코딩 서비스는 응용 통계에서 박사 학위를 보유하고.

즐겨찾기 및 공유

답글 남기기

이메일 주소는 공개되지 않습니다.