######################################################
## 7. Simple LinearRegression
## 연속 데이터에 대한 분석 방법
## 종속 변수와 독립변수의 관계가 1:1 이다.
## 예를 들면 독립변수는 차량의 속도 종속변수는 차량의 제동 거리가 될 수 있겠다.
######################################################
## (1) speed ,dist 두개의 컬럼으로 구성된 데이터 셋을 만들었다
speed = c(10,20,30,40,50,60,70)
dist = c(13,18,25,38,47,61,105)
data = data.frame(speed ,dist)
print(data)
## (2) 선형회귀식을 만든다
## – speed 1.371 0.237 5.786 0.00217 **
## ==> 기울기는 1.371 이며 이 기울기에 대한 P-Value 는 0.00217 로 회기식은 유의함
## – Adjusted R-squared: 0.8441
## ==> 조정된 설명력 : 해당 모형의 설득력을 지수화
## 아래는 회귀식의 Summary(out) 결과이다.
##
##Residuals:
## 1 2 3 4 5 6 7
## 10.286 1.571 -5.143 -5.857 -10.571 -10.286 20.000
##
##Coefficients:
## Estimate Std. Error t value Pr(>|t|)
##(Intercept) -11.000 10.600 -1.038 0.34696
##speed 1.371 0.237 5.786 0.00217 **
##—
##Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
##
##Residual standard error: 12.54 on 5 degrees of freedom
##Multiple R-squared: 0.87, Adjusted R-squared: 0.8441
##F-statistic: 33.48 on 1 and 5 DF, p-value: 0.002171
out = lm(dist ~ speed , data=data)
out
summary(out)
## (3) 회귀식 확인
## plot(dist ~ speed, data=data, col=”blue”) 은 파란점으로 실제 데이터를 표시
## abline(out, col=”red”) 는 선형회귀식을 붉은선으로 표시한다.
## 앞에서 설명한 것처럼 오차가 가장적은 방향으로 식이 성립된다.
plot(dist ~ speed, data=data, col=”blue”)
abline(out, col=”red”)
## (4) 회귀식 보정
## 이 케이스에서 실제로 속도가 0 이라면 제동거리도 0이 되는 것이 맞다
## -1 을 통해서 Y 절편을 제거 할 수 있다.
summary(lm(dist ~ speed -1, data=data))
out = lm(dist ~ speed – 1 , data=data)
plot(dist ~ speed -1, data=data)
abline(out, col=”red”)
## (4) sqrt 변환
## sqrt 를 적용시 데이터의 퍼지는 정도가 줄어드는 것을 볼 수 있다.
## 단, 본 케이스의 경우 log 적용시 정규분포도가 오히려 나빠짐
plot(dist ~ speed -1, data=data)
plot(log(dist) ~ speed – 1, data=data)
plot(sqrt(dist) ~ speed- 1, data=data)
##미 적용
out = lm(dist ~ speed – 1 , data=data)
plot(dist ~ speed – 1, data=data)
abline(out, col=”red”)
##log 적용
out = lm(log(dist) ~ speed – 1 , data=data)
plot(log(dist) ~ speed – 1, data=data)
abline(out, col=”red”)
##sqrt 적용
out = lm(sqrt(dist) ~ speed – 1 , data=data)
plot(sqrt(dist) ~ speed – 1, data=data)
abline(out, col=”red”)
## (5) 모델 검증
## out 의 Normal Q-Q 는 직선의 형태를 갖으며 (normal Q-q 표준화된 그래프, 정렬)
## 나머지 관계도는 별다른 추세를 보이지 않는다.
## 또한 resid(out)을 통해 구한 잔차는
## 데이터 변환 없을 경우 P-Value 0.0.004615
## log 적용시 P-Value 0.8196
## sqrt 적용시 P-Value 0.9638
par(mfrow=c(2,2))
plot(out)
##qq Normal
plot(resid(out))
qqnorm(resid(out))
qqline(resid(out))
##정규성 검정
shapiro.test(resid(out))
## (6) 결과물 out 의 내용
## names(out) 을 통해서 얻을 수 있는 값을 확인 가능
names(out)
out$rank
out$residual
##예측치
fitted(out)
##잔차
resid(out)
##Residual Standard Error
sqrt(sum(resid(out)^2)/(length(data$dist)-2))
## (7) simulation
## – 편차를 제거하고 sqrt를 적용한 회귀식을 생성
## – rnorm 을 통해 data 수와 같은 수를 갖고, 평균이 거리 예측치이며, 분산은 오차와인
## 임의수 테스트 데이터를 만들어 낸다.
## – 다시 만들어낸 dist set 과 speed 의 관계를 그래프로 표현
## 회귀식 생성
out = lm(sqrt(dist) ~ speed-1, data=data)
## 분산
print(summary(out)$sigma)
## 평균
print(mean(fitted(out)))
##위와 같은 분산, 평균을 갖는 새로운 dist 데이터 생성
dist = rnorm(n=nrow(data), mean=fitted(out), sd=summary(out)$sigma)^2
plot(dist ~ data$speed)
## 모델과 R 명령어
##Model : Y = a + bX
##R Code : Y ~ X
##
##Model : Y = bX
##R Code : Y ~ X – 1
##
##Model : sqrt(Y) = a + bX
##R Code : sqrt(Y) ~ X
##
##Model : sqrt(Y) = bX
##R Code : sqrt(Y) ~ X – 1
##
##Model : lnY = a + bX
##R Code : log(Y) ~ X
Hello Web Admin, I noticed that your On-Page SEO is is missing a few factors, for one you do not use all three H tags in your post, also I notice that you are not using bold or italics properly in your SEO optimization. On-Page SEO means more now than ever since the new Google update: Panda. No longer are backlinks and simply pinging or sending out a RSS feed the key to getting Google PageRank or Alexa Rankings, You now NEED On-Page SEO. So what is good On-Page SEO?First your keyword must appear in the title.Then it must appear in the URL.You have to optimize your keyword and make sure that it has a nice keyword density of 3-5% in your article with relevant LSI (Latent Semantic Indexing). Then you should spread all H1,H2,H3 tags in your article.Your Keyword should appear in your first paragraph and in the last sentence of the page. You should have relevant usage of Bold and italics of your keyword.There should be one internal link to a page on your blog and you should have one image with an alt tag that has your keyword….wait there’s even more Now what if i told you there was a simple WordPress plugin that does all the On-Page SEO, and automatically for you? That’s right AUTOMATICALLY, just watch this 4minute video for more information at. Seo Plugin