모델 > 관찰 통계를 데이터에 추가하기...

Models > Add observation statistics to data...

Linux 사례 (MX 21)

데이터셋을 활성화시킨 다음, 그 데이터셋으로 모델을 만들었다고 생각하자. 예를 들어, carData 패키지의 Prestige 데이터셋으로 선형 모델을 만들었고, 그 모델을 LinearModel.1이라고 하자.

그럼, R Commander의 화면 메뉴 기능에서 '모델 > 관찰 통계를 데이터에 추가하기...' 기능이 활성화된다. 해당 메뉴 기능을 선택하면 아래와 같은 선택 창이 등장한다. 이 통계치들은 lm() 함수를 이용하여 모델을 생성하는 과정에서 함께 연산된 값들이며, 이 값들을 Prestige 데이터셋에 추가할 것인가를 질문받게 된다.

Linux 사례 (MX 21)

R Commander 화면에서 <데이터셋 보기>를 선택하면 관찰 통계치가 추가되어 있음을 아래와 같이 알 수 있다:

Linux 사례(MX 21)

data(Prestige)         # 데이터셋 불러오기
summary(LinearModel.1) # 모델 만든후 요약정보 보기
Prestige<- within(Prestige, {
  fitted.LinearModel.1 <- fitted(LinearModel.1)
  residuals.LinearModel.1 <- residuals(LinearModel.1)
  rstudent.LinearModel.1 <- rstudent(LinearModel.1)
  hatvalues.LinearModel.1 <- hatvalues(LinearModel.1)
  cooks.distance.LinearModel.1 <- cooks.distance(LinearModel.1)
  obsNumber <- 1:nrow(Prestige) 
})

그래프 > 이산형 수치 변수 그리기...

Graphs > Plot discrete numeric variable...

Linux 사례 (MX 21)

carData 패키지의 Cowles 데이터셋을 활용해서 연습해보자.

data(Cowles, package="carData") # Cowles 데이터셋 불러오기
summary(Cowles)                 # Cowles 데이터셋의 요약정보 보기 (변수이름, 사례요약)

외향성을 의미하는 이산형 수치 변수인 extraversion을 선택한다.

Linux 사례 (MX 21)

요인형 변수 목록에 sex와 volunteer가 있다. volunteer를 선택한다.

Linux 사례 (MX 21)

<선택기능> 창의 선택 기능중에서 <축 크기조정>에 '백분율"을 선택한다. 그리고 <그림 이름표>에는 내용적 이해를 돕는 사항들을 넣을 수 있다.

Linux 사례 (MX 21)

아래와 같이 그래픽 창에 '이산형 수치 변수' extraversion의 백분율 분포가 자원봉사 지원 여부인 volunteer 변수의 요인형 수준인 'no', 'yes' 별로 그래프화된다.

Linux 사례 (MX 21)

with(Cowles, discretePlot(extraversion, by=volunteer, scale="percent", xlab="외향성 (extraversion)",
   ylab="비율 (%)", main="자원봉사 지원여부 그룹에 따른 외향성 분포"))

<관련 사항>

- Cowles 데이터셋 이해하기 -> https://rcmdr.tistory.com/154

 

Cowles 데이터셋

carData > Cowles data(Cowles, package="carData") help("Cowles") Cowles {carData} R Documentation Cowles and Davis's Data on Volunteering Description The Cowles data frame has 1421 rows and 4 co..

rcmdr.kr


?discretePlot  # RcmdrMisc 패키지의 discretePlot 도움말 보기

if (require(datasets)){
  data(mtcars)
  mtcars$cyl <- factor(mtcars$cyl)
  with(mtcars, {
    discretePlot(carb)
    discretePlot(carb, scale="percent")
    discretePlot(carb, by=cyl)
  })
}

통계 > 비모수 검정 > 쌍-표본 Wilcoxon test...

Statistics > Nonparametric tests > Paired-samples Wilcoxon test...

 

Windows 사례 (10 Pro)

depression 이라는 이름의 데이터셋을 만들자. first, second, change 라는 세개의 변수를 갖는다고 하자. change 변수는 second와 first의 차이를 사례 값으로 갖는다고 하자. 아래와 같을 것이다.

first <- c(1.83,  0.50,  1.62,  2.48, 1.68, 1.88, 1.55, 3.06, 1.30)
second <- c(0.878, 0.647, 0.598, 2.05, 1.06, 1.29, 1.06, 3.14, 1.29)
change <- second - first  # compute new variable 참조할 것
depression <- data.frame(cbind(first, second, change)) # 세개의 vector를 묶어 데이터프레임으로 전환

https://rcmdr.kr/54

 

2. Compute new variable...

새로운 변수 계산하기... Data > Manage variables in active data set > Compute new variable... 활성 데이터셋에 있는 변수들을 활용하여 새로운 변수를 생성하는 많은 방법이 있다. 은 일반적으로 수치형 사..

rcmdr.kr

Windows 사례 (10 Pro)

<선택기능> 창에 있는 기본 선택 사양을 그대로 사용해보자. <대립 가설>에서 '양쪽(측)'이 선택되어 있다. depression 데이터셋의 second 변수와 first 변수 사이에 순위 차이가 있는가를 살펴보는 것이라 할 수 있다.

Windows 사례 (10 Pro)

with(depression, median(second - first, na.rm=TRUE)) # median difference
with(depression, wilcox.test(second, first, alternative='two.sided', 
  paired=TRUE)) # 양측 검정
with(depression, wilcox.test(second, first, alternative='less', paired=TRUE))
                # 단측 검정 ( 차이 < 0 )

Windows 사례 (10 Pro)

<선택 기능> 창에서 <대립 가설>에 '차이 < 0'를 선택하자. second 변수의 사례 값이 first 변수의 사례 값보다 작아졌는지를 점검하는 것이다. (depression이 작아졌다는 것은 개선되었다는 의미로 해석될 수도 있다.)

Windows 사례 (10 Pro)
Windows 사례 (10 Pro)

'Statistics > Nonparametric tests' 카테고리의 다른 글

2. Single-sample Wilcoxon test...  (0) 2022.03.21
1. Two-sample Wilcoxon test...  (0) 2022.03.21
5. Friedman rank-sum test...  (0) 2022.03.20
4. Kruskal-Wallis test...  (0) 2022.03.09

통계 > 비모수 검정 > 일-표본 Wilcoxon 검정...

Statistics > Nonparametric tests > Single-sample Wilcoxon test...

Windows 사례 (10 Pro)

먼저 '통계 > 비모수 검정 > 쌍-표본 Wilcoxon 검정...'을 살펴보는 것을 추천한다. depression 이라는 데이터셋을 만들고, 변수 first, second, change를 만들었다. change는 second와 first의 차이에 관련 사례 값을 갖는다.

https://rcmdr.tistory.com/179

 

3. Paired-samples Wilcoxon test...

통계 > 비모수 검정 > 쌍-표본 Wilcoxon test... Statistics > Nonparametric tests > Paired-samples Wilcoxon test... depression 이라는 이름의 데이터셋을 만들자. first, second, change 라는 세개의 변수를..

rcmdr.kr

'통계 > 비모수 검정 > 일-표본 Wilcoxon 검정...'은 depression 데이터셋의 change 변수처럼 두 개 변수의 차이를 갖는 (또는 차이가 계산된) 변수를 기준값과 비교하여 차이 검정을 하는 기법이다. 때로는 특정 변수와 기준 값의 비교를 통하여 검정을 하기도 한다.

Windows 사례 (10 Pro)

데이터셋과 변수에 대한 의미적 판단이 깊은 경우 <대립 가설>의 선택을 다양하게 결정할 수 있다. 아래 화면에서 'mu < 0'은 change가 귀무(영) 가설, mu=0.0 일 때 depression 의 변화가 작아졌음을 확인하는 것으로 이해할 수 있다.

Windows 사례 (10 Pro)

with(depression, median(change, na.rm=TRUE))
with(depression, mean(change, na.rm=TRUE))
with(depression, wilcox.test(change, alternative='less', mu=0.0))

출력 창에 아래와 같이 검정의 통계적 정보가 제공된다:

'Statistics > Nonparametric tests' 카테고리의 다른 글

3. Paired-samples Wilcoxon test...  (0) 2022.03.21
1. Two-sample Wilcoxon test...  (0) 2022.03.21
5. Friedman rank-sum test...  (0) 2022.03.20
4. Kruskal-Wallis test...  (0) 2022.03.09

통계 > 비모수 검정 > 이-표본 Wilcoxon 검정...

Statistics > Nonparametric tests > Two-sample Wilcoxon test...

Windows 사례 (10 Pro)

'통계 > 비모수 검정 > 이-표본 Wilcoxon 검정...' 기능을 이용하기 위해서 데이터셋을 선택하고, 정비해보자. datasets 패키지에 있는 airquality 데이터셋을 선택하고, 그 안에 있는 변수 Month 사례 값들 중에서 5월, 8월에 해당하는 5, 8을 선택한 하위 데이터셋을 만들고, airquality.sub라 이름 붙이자. 그리고, 5, 8을 요인화 시켜서, May, August라고 수준을 만들자.

https://rcmdr.kr/100

 

airquality 데이터셋

datasets > airquality R이 시작될 때, datasets 패키지가 자동으로 호출된다. 따라서 R Commander를 실행할 때, datasets 패키지는 첨부 패키지화되어 메뉴창을 통해서 내부 데이터셋을 찾고 불러올 수 있다.

rcmdr.kr

data(airquality, package="datasets") # airquality 데이터셋 불러오기
airquality.sub <- subset(airquality, subset=Month %in% c(5, 8)) 
                                     # 5월, 8월만 포함하는 하위셋 만들기
summary(airquality.sub)
airquality.sub <- within(airquality.sub, {
  Month.f <- factor(Month, labels=c('May','August'))
})                                   # Month.f라는 요인형 변수 만들기

집단 변수인 Month.f는 두개의 수준을 갖고 있고, 이 두개의 수준을 기준으로 Ozone을 비교하는 것이다.

Windows 사례 (10 Pro)

<선택기능> 창에 있는 기본 설정을 우선 그대로 사용해보자. 향후 데이터셋과 변수에 대한 이해력이 높아지면, 다양한 선택을 할 수 있다.

Windows 사례 (10 Pro)

Tapply(Ozone ~ Month.f, median, na.action=na.omit, data=airquality.sub) 
  # medians by group
wilcox.test(Ozone ~ Month.f, alternative="two.sided", data=airquality.sub)

Windows 사례 (10 Pro)

'Statistics > Nonparametric tests' 카테고리의 다른 글

3. Paired-samples Wilcoxon test...  (0) 2022.03.21
2. Single-sample Wilcoxon test...  (0) 2022.03.21
5. Friedman rank-sum test...  (0) 2022.03.20
4. Kruskal-Wallis test...  (0) 2022.03.09

통계 > 비모수 검정 > Friedman 순위-합 검정...

Statistics > Nonparametric tests > Friedman rank-sum test...

Linux 사례 (MX 21)

<Friendman 순위-합 검정...> 기능은 두개 이상의 수치형 변수가 데이터셋에 포함되어 있을때 활성화된다. <Friedman 순위-합 검정...> 기능의 함수적 특징을 이해하기 위하여 먼저 아래와 같이 RoundingTimes라는 데이터셋을 만들어보자.

RoundingTimes <-
data.frame(matrix(c(5.40, 5.50, 5.55,
         5.85, 5.70, 5.75,
         5.20, 5.60, 5.50,
         5.55, 5.50, 5.40,
         5.90, 5.85, 5.70,
         5.45, 5.55, 5.60,
         5.40, 5.40, 5.35,
         5.45, 5.50, 5.35,
         5.25, 5.15, 5.00,
          5.85, 5.80, 5.70,
         5.25, 5.20, 5.10,
         5.65, 5.55, 5.45,
         5.60, 5.35, 5.45,
         5.05, 5.00, 4.95,
         5.50, 5.50, 5.40,
         5.45, 5.55, 5.50,
         5.55, 5.55, 5.35,
         5.45, 5.50, 5.55,
         5.50, 5.45, 5.25,
         5.65, 5.60, 5.40,
         5.70, 5.65, 5.55,
         6.30, 6.30, 6.25),
       nrow = 22,
       byrow = TRUE,
       dimnames = list(1 : 22,
                       c("Round Out", "Narrow Angle", "Wide Angle"))))
summary(RoundingTimes)     # RoundingTimes 데이터셋 보기

이 데이터셋을 만드는 이유는 friedman.test()라는 함수의 예제 연습에 포함되어있기 때문이다. RoundingTimes 데이터셋은 아래와 같은 내부 구성을 갖는다:

Linux 사례 (MX 21)

RoungdingTimes 라는 데이터셋을 만들고, 화면 맨 위에 있는 <Friedman 순위-합 검정...> 기능을 선택하면 추가적인 선택 메뉴 창으로 넘어간다. <Friedman 순위 합 검정> 창에서 <반복-측정 변수 (두개 이상 선택)>에서 세개의 변수를 모두 선택하고, 예(OK) 버튼을 누른다.

Linux 사례 (MX 21)

local({
  .Responses <- na.omit(with(RoundingTimes, cbind(Narrow.Angle, Round.Out, Wide.Angle)))
  cat("\nMedians:\n") 
  print(apply(.Responses, 2, median)) 
  friedman.test(.Responses)
})

Linux 사례 (MX 21)

help("friedman.test")     # Friedman 순위 합 검정 도움말 보기
example("friedman.test")  # Friedman 순위 합 검정 예제 연습하기

'Statistics > Nonparametric tests' 카테고리의 다른 글

3. Paired-samples Wilcoxon test...  (0) 2022.03.21
2. Single-sample Wilcoxon test...  (0) 2022.03.21
1. Two-sample Wilcoxon test...  (0) 2022.03.21
4. Kruskal-Wallis test...  (0) 2022.03.09

통계 > 차원 분석 > 군집 분석 > 위계 군집화를 데이터셋에 추가하기...

Statistics > Dimensional Analysis > Cluster Analysis > Add hierarchical clustering to data set...

Linux 사례 (MX 21)

 ' 통계 > 차원 분석 > 군집 분석 > 위계 군집 분석...' 기능을 진행했다고 하자. 그 다음에 <위계군집화를 데이터 셋에 추가하기...>를 이용할 수 있다. <군집의 수:>를 3으로 변경하자. 그리고 예(OK) 버튼을 누르면, hclus.label라는 변수가 USArrests 데이터셋에 추가된다.

Linux 사례 (MX 21)

R Commander 상단에 있는 <데이터셋 보기> 버튼을 눌러보자. 아래와 같이 데이터셋의 내부 구성이 보일 것이다. hclus.label 변수가 추가되어 있음을 확인할 수 있다:

Linux 사례 (MX 21)

통계 > 차원 분석 > 군집 분석 > 위계 군집화 요약하기...

Statistics > Dimensional analysis > Cluster analysis > Summarizing hierarchical clustering...

Linux 사례 (MX 21)

'통계 > 차원 분석 > 군집 분석 > 위계 군집 분석'을 하였다고 하자. 그 다음에는 <위계 군집화 요약하기...> 기능을 사용할 수 있다.

https://rcmdr.kr/172

 

5.2. Hierarchical cluster analysis...

통계 > 차원 분석 > 군집 분석 > 위계 군집 분석... Statistics > Dimensional analysis > Cluster analysis > Hierarchical cluster analysis... datasets 패키지에 있는 USArrests 데이터셋을 활용해서, 위계..

rcmdr.kr

<위계적 군집 요약> 창에서 <군집의 수>를 3으로 변경해보자. <군집 요약 인쇄하기>, <군집 행렬도(Bi-plot)> 등이 선택되어 있는 것을 점검하자.

Linux 사례 (MX 21)

예(OK) 버튼을 누르면, 아래와 같은 그래픽 창이 등장한다.

Linux 사례 (MX 21)

 

summary(as.factor(cutree(HClust.1, k = 3))) # Cluster Sizes
by(model.matrix(~-1 + Assault + Murder + Rape + UrbanPop, USArrests), as.factor(cutree(HClust.1, k 
  = 3)), colMeans) # Cluster Centroids
biplot(princomp(model.matrix(~-1 + Assault + Murder + Rape + UrbanPop, USArrests)), xlabs = 
  as.character(cutree(HClust.1, k = 3)))

Linux 사례 (MX 21)

통계 > 차원 분석 > 군집 분석 > 위계 군집 분석...

Statistics > Dimensional analysis > Cluster analysis > Hierarchical cluster analysis...

Linux 사례 (MX 21)

datasets 패키지에 있는 USArrests 데이터셋을 활용해서, 위계 군집 분석을 연습해보자. 우선 USArrests 데이터셋을 활성화시킨다.

https://rcmdr.kr/144

 

USArrests 데이터셋

datasets > USArrests data(USArrests, package="datasets") R Commander 화면 상단에서 <데이터셋 보기> 버튼을 누르면 아래와 같은 내부 구성을 확인할 수 있다. help("USArrests") USArrests {datasets} R Do..

rcmdr.kr

<위계적 군집화> 창에서 아래와 같이 변수 네개를 모두 선택한다. 그리고, 기본으로 추천되는 HClust.1를 군집화 이름으로 사용하자. 

Linux 사례 (MX 21)

<선택기능> 창에서 기본설정된 사항들을 그대로 사용해보자. <군집화 방법>, <거리 측정>, <덴드로그램 그리기> 등을 살펴본다.

Linux 사례 (MX 21)

예(OK) 버튼을 누르면, 아래와 같은 그래픽 창이 등장한다.

Linux 사례 (MX 21)

data(USArrests, package="datasets")
HClust.1 <- hclust(dist(model.matrix(~-1 + Assault+Murder+Rape+UrbanPop, USArrests)) , method= 
  "ward")
plot(HClust.1, main= "Cluster Dendrogram for Solution HClust.1", xlab= 
  "Observation Number in Data Set USArrests", sub="Method=ward; Distance=euclidian")

 

통계 > 차원 분석 > 군집 분석 > k-평균 군집 분석...

Statistics > Dimensional analysis > Cluster analysis > k-means cluster analysis...

Windows 사례 (10 Pro)

datasets 패키지에서 제공하는 USArrests 데이터셋을 이용해보자.

https://rcmdr.tistory.com/144

 

USArrests 데이터셋

datasets > USArrests data(USArrests, package="datasets") R Commander 화면 상단에서 <데이터셋 보기> 버튼을 누르면 아래와 같은 내부 구성을 확인할 수 있다. help("USArrests") USArrests {datasets} R Do..

rcmdr.kr

데이터셋에 포함된 네개의 변수를 모두 선택한다.

Windows 사례 (10 Pro)

<선택기능> 창에서, 군집의 수를 3개, 초기값의 수를 5번으로, 최대 반복 횟수를 5회로 정해보자. 데이터셋에 추가될 변수 이름이 KMeans가 될 것이다. 아래 있는 선택사항에서 데이터셋에 군집 할당하기를 선택한다.

Windows 사례 (10 Pro)

위 화면에서 선택된 군집 행렬도(Bi-plot)이 아래와 같이 생산된다.

Windows 사례 (10 Pro)

USArrests 데이터셋에 변수 KMeans가 추가될 것이다. R Commander 상단에 있는 <데이터셋 보기> 버튼을 눌러보자. KMeans 변수는 요인형으로 1, 2, 3 이라는 세개의 군집을 표시한다.

Windows 사례 (10 Pro)

아래 화면은 다소 복잡해보일 것이다. 그러나 객체 .cluster가 만들어졌으며, 그 객체안에 있는 $size, $withinss, $tot.withinss, $betweenss 등의 정보를 차례를 보여준다고 생각하자.  그리고 biplot을 생산하고, USArrests 데이터셋에 KMeans라는 변수를 추가하는 것이다.

'Statistics > Dimensional analysis' 카테고리의 다른 글

5.3. Summarize hierarchical clustering...  (0) 2022.03.20
5.2. Hierarchical cluster analysis...  (0) 2022.03.20
3. factor analysis...  (0) 2022.03.08
2. Principal-components analysis...  (0) 2022.03.08
1. Scale reliability...  (0) 2022.03.08

+ Recent posts