“내 컴퓨터에 있는 파일의 위치 주소/toward.csv” <- 상황에 맞게 변형해서 사용할 것! header=true <- 이거는 첫 번째 줄 (ID, TLF 같은 변수명은 인식하지 않도록 하는 거) + 필요한 패키지 실행하기
GY_rawdata <- read.csv("C:/R_workingspace/toward.csv", header=TRUE)
as.factor 함수 사용 <- “vector” 값을 factor로 변환 GY) 나는 GRA3를 만들어서, 아래와 같이 a,b,c로 다시 할당해주었어! 우리는 C+이하의 학점 받은 사람만 보는게 아니고, 얼마나 잘했는지의 정도도 중요한 것 같아서..! a: A+~A- b: B+~B- c: C+~ (D,F 포함)
=> 이렇게 할 경우, a=1, b=2, c=3으로 불러오게 돼. #### 즉, ’숫자가 클수록 학점이 낮은 것’이야.
table(is.na) 함수 이용해서 결측치가 있는지 확인해봤는데, FALSE만 13020이었어. #### 결측치는 없는 것 같아! (이상치 확인은 일단 넘어갈게… 일이 많네,,,)
+본 과제에서는 어떤 변수의 대리변인으로 ROB, WOB, WBC를 사용했는지 구체적으로 명시해야 할 것 같아. +사실, 당연히 ’토론 게시판 활용 정도’가 될 것 같긴해.
lm(formula=GRA3~ROB, data=GY_rawdata)
## Warning in model.response(mf, "numeric"): using type = "numeric" with a factor
## response will be ignored
## Warning in Ops.factor(y, z$residuals): 요인(factors)에 대하여 의미있는 '-'가 아
## 닙니다.
##
## Call:
## lm(formula = GRA3 ~ ROB, data = GY_rawdata)
##
## Coefficients:
## (Intercept) ROB
## 1.547389 0.008518
GY_mode1 <- lm(formula=GRA3~ROB, data=GY_rawdata)
## Warning in model.response(mf, "numeric"): using type = "numeric" with a factor
## response will be ignored
## Warning in model.response(mf, "numeric"): 요인(factors)에 대하여 의미있는 '-'가
## 아닙니다.
GY_mode1
##
## Call:
## lm(formula = GRA3 ~ ROB, data = GY_rawdata)
##
## Coefficients:
## (Intercept) ROB
## 1.547389 0.008518
summary(GY_mode1)
## Warning in Ops.factor(r, 2): 요인(factors)에 대하여 의미있는 '^'가 아닙니다.
##
## Call:
## lm(formula = GRA3 ~ ROB, data = GY_rawdata)
##
## Residuals:
## Error in quantile.default(resid): (unordered) factors are not allowed
엥. 정적상관 관계로 0.008..? ->해석: 관련 없음(오히려 반대되는 결과)
참고로 규칙성(ROB)는 높을수록 좋은거고, GRA3는 낮을수록 좋은거니까 부적상관 관계(-)가 나와야 한다고 생각했어. Q. ROB가 높을수록 좋은거 맞겠지?
GY_rawdata$GRA3 <- as.numeric(GY_rawdata$GRA3)
GY_mode1 <- lm(formula=GRA3~ROB, data=GY_rawdata)
summary(GY_mode1)
##
## Call:
## lm(formula = GRA3 ~ ROB, data = GY_rawdata)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.0158 -0.7770 0.1058 0.6667 1.1939
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 1.547389 0.160313 9.652 8.02e-14 ***
## ROB 0.008518 0.002950 2.888 0.00539 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.7515 on 60 degrees of freedom
## Multiple R-squared: 0.122, Adjusted R-squared: 0.1074
## F-statistic: 8.339 on 1 and 60 DF, p-value: 0.005388
GY_mode2 <- lm(formula=GRA3~WOB, data=GY_rawdata)
## Error in eval(predvars, data, env): 객체 'WOB'를 찾을 수 없습니다
GY_mode2
## Error in eval(expr, envir, enclos): 객체 'GY_mode2'를 찾을 수 없습니다
엥? 여기 WOB가 없는데???????
GY_mode3 <- lm(formula=GRA3~WBC, data=GY_rawdata)
GY_mode3
##
## Call:
## lm(formula = GRA3 ~ WBC, data = GY_rawdata)
##
## Coefficients:
## (Intercept) WBC
## 2.31174 -0.01603
summary(GY_mode3)
##
## Call:
## lm(formula = GRA3 ~ WBC, data = GY_rawdata)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.16751 -0.77887 -0.04248 0.81570 1.34534
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.311743 0.175752 13.153 < 2e-16 ***
## WBC -0.016026 0.006005 -2.669 0.00977 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.7583 on 60 degrees of freedom
## Multiple R-squared: 0.1061, Adjusted R-squared: 0.09123
## F-statistic: 7.123 on 1 and 60 DF, p-value: 0.009772
오, 여기는 그래도 1% 정도..관련이 있네. ->해석: 거의 관련 없음
GY_mode4 <- lm(formula=GRA3~VOB, data=GY_rawdata)
GY_mode4
##
## Call:
## lm(formula = GRA3 ~ VOB, data = GY_rawdata)
##
## Coefficients:
## (Intercept) VOB
## 2.898413 -0.003269
summary(GY_mode4)
##
## Call:
## lm(formula = GRA3 ~ VOB, data = GY_rawdata)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.32961 -0.54914 -0.03213 0.60419 1.43533
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.8984134 0.2399782 12.08 < 2e-16 ***
## VOB -0.0032690 0.0007446 -4.39 4.67e-05 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.6978 on 60 degrees of freedom
## Multiple R-squared: 0.2431, Adjusted R-squared: 0.2305
## F-statistic: 19.27 on 1 and 60 DF, p-value: 4.67e-05
오, 여기는 0.3%정도 관련있네 ->해석: 관련 없음
GY_mode5 <- lm(formula=GRA3~TSB, data=GY_rawdata)
GY_mode5
##
## Call:
## lm(formula = GRA3 ~ TSB, data = GY_rawdata)
##
## Coefficients:
## (Intercept) TSB
## 2.447e+00 -5.583e-06
summary(GY_mode5)
##
## Call:
## lm(formula = GRA3 ~ TSB, data = GY_rawdata)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1.27539 -0.69011 -0.05167 0.75619 1.33200
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.447e+00 2.242e-01 10.915 7e-16 ***
## TSB -5.583e-06 2.141e-06 -2.607 0.0115 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.7601 on 60 degrees of freedom
## Multiple R-squared: 0.1018, Adjusted R-squared: 0.08679
## F-statistic: 6.797 on 1 and 60 DF, p-value: 0.0115
헐! 이거 완련 관련있네. -> 해석: 학점 단계가 올라갈 때마다 (ex. C->B, B->A) 게시판 방문 시간이 5씩 증가함. => 즉, 게시판 방문 시간과 학업성취도간 관련이 있다고 볼 수 있음 + P-value 값도, 0.0115로 0.05보다 작으니까 신뢰 가능할 것 같아!!
#’이상치’구하기
library(dplyr)
##
## 다음의 패키지를 부착합니다: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
게시판 방문 빈도(VOB)
GY_rawdata %>% filter(GY_rawdata$VOB >= 300) %>% select(ID, VOB, GRA)
## ID VOB GRA
## 1 3 409 A+
## 2 4 351 B+
## 3 8 418 A+
## 4 10 422 A+
## 5 12 431 A+
## 6 13 649 A+
## 7 14 300 B+
## 8 16 419 B+
## 9 17 339 A+
## 10 18 476 B+
## 11 20 582 A+
## 12 21 499 A+
## 13 25 391 B+
## 14 28 436 B+
## 15 29 537 B+
## 16 31 360 A+
## 17 32 325 C+
## 18 36 347 A+
## 19 39 356 B+
## 20 41 344 A+
## 21 42 408 C0
## 22 43 376 A+
## 23 44 390 A+
## 24 46 353 A+
## 25 57 309 B+
## 26 59 411 A+
## 27 62 460 B+
게시판 방문 시간(TSB)
GY_rawdata %>% filter(GY_rawdata$TSB >= 94486) %>% select(ID, TSB, GRA)
## ID TSB GRA
## 1 3 158809 A+
## 2 6 116441 B+
## 3 8 134252 A+
## 4 10 110632 A+
## 5 12 101865 A+
## 6 13 248716 A+
## 7 16 150726 B+
## 8 18 101508 B+
## 9 20 111926 A+
## 10 21 146003 A+
## 11 23 127613 C0
## 12 28 115750 B+
## 13 29 172113 B+
## 14 31 194901 A+
## 15 33 103987 B+
## 16 35 139510 C0
## 17 36 99776 A+
## 18 39 142338 B+
## 19 42 122959 C0
## 20 43 206775 A+
## 21 44 120335 A+
## 22 46 111757 A+
## 23 47 136947 C+
## 24 57 104828 B+
## 25 59 139445 A+
## 26 62 148597 B+
토론게시판 덧글수(WBC)
GY_rawdata %>% filter(GY_rawdata$WBC >= 24) %>% select(ID, WBC, GRA)
## ID WBC GRA
## 1 3 79 A+
## 2 6 31 B+
## 3 8 24 A+
## 4 10 32 A+
## 5 12 56 A+
## 6 13 42 A+
## 7 14 31 B+
## 8 15 26 B+
## 9 17 31 A+
## 10 18 27 B+
## 11 21 58 A+
## 12 23 29 C0
## 13 25 71 B+
## 14 29 50 B+
## 15 31 28 A+
## 16 33 24 B+
## 17 36 24 A+
## 18 37 24 C0
## 19 39 56 B+
## 20 40 37 A+
## 21 41 27 A+
## 22 45 29 A+
## 23 47 25 C+
## 24 48 26 B+
## 25 51 41 C+
## 26 55 49 A+
## 27 57 46 B+
## 28 62 26 B+
평균 글자수(ALP)
GY_rawdata %>% filter(GY_rawdata$ALP >= 5457) %>% select(ID, ALP, GRA)
## ID ALP GRA
## 1 3 6916 A+
## 2 6 7540 B+
## 3 10 9118 A+
## 4 12 16714 A+
## 5 14 7902 B+
## 6 15 6989 B+
## 7 18 10249 B+
## 8 20 6777 A+
## 9 23 5775 C0
## 10 25 7871 B+
## 11 29 6734 B+
## 12 30 8326 B+
## 13 33 5834 B+
## 14 34 9135 D
## 15 36 5619 A+
## 16 37 9086 C0
## 17 40 10842 A+
## 18 41 6522 A+
## 19 42 8875 C0
## 20 43 11571 A+
## 21 50 8678 C+
## 22 55 13582 A+
## 23 57 10421 B+
## 24 59 9978 A+
## 25 60 5712 A-
## 26 62 9459 B+