본문 바로가기
5. 자료구조/8) 평면분할표 | ftable()

[R 코딩] 평면분할표 ftable 함수 출력옵션

by makhimh 2020. 12. 12.
반응형

ftable 함수의 기본적인 설명은 아래 링크로 대신합니다. 

 

rbasall.tistory.com/160

 

[R 코딩] 평면분할표 ftable (3차원 이상의 table을 계층화)

ftable 함수는 table을 계층화해주는 함수입니다. 3차원 이상의 table부터 의미가 있습니다. 예시를 통해 이해해봅시다. 먼저 3차원 table을 하나 정의해봅시다. 타이타닉호에 탑승한 5사람의 대

rbasall.tistory.com

 

내장데이터인 타이타닉데이터를 이용하여 ftable 함수의 출력옵션을 알아봅시다. 먼저 타이타닉데이터를 살펴봅시다. 

 

> str(Titanic)
 'table' num [1:4, 1:2, 1:2, 1:2] 0 0 35 0 0 0 17 0 118 154 ...
 - attr(*, "dimnames")=List of 4
  ..$ Class   : chr [1:4] "1st" "2nd" "3rd" "Crew"
  ..$ Sex     : chr [1:2] "Male" "Female"
  ..$ Age     : chr [1:2] "Child" "Adult"
  ..$ Survived: chr [1:2] "No" "Yes"

 

요인은 네가지가 있습니다. Class, Sex, Age, Survived 입니다. 따라서 Titanic 데이터는 table 데이터이고, 4차원 table입니다. 

 

ftable 함수를 적용해봅시다. 

 

> ftable(Titanic)
                   Survived  No Yes
Class Sex    Age                   
1st   Male   Child            0   5
             Adult          118  57
      Female Child            0   1
             Adult            4 140
2nd   Male   Child            0  11
             Adult          154  14
      Female Child            0  13
             Adult           13  80
3rd   Male   Child           35  13
             Adult          387  75
      Female Child           17  14
             Adult           89  76
Crew  Male   Child            0   0
             Adult          670 192
      Female Child            0   0
             Adult            3  20

 

행의 계층을 만드는데 3개의 요인이 사용됩니다. Class Sex Age 입니다. 열에는 Survived 가 사용되었습니다. 

 

 

row.vars 옵션

 

행의 계층을 선택합니다. 만약 Class, Survived 를 사용하기 원한다면 아래와 같이 입력하면 됩니다. 

 

> ftable(Titanic,row.vars=c("Class","Survived"))
               Sex  Male       Female      
               Age Child Adult  Child Adult
Class Survived                             
1st   No               0   118      0     4
      Yes              5    57      1   140
2nd   No               0   154      0    13
      Yes             11    14     13    80
3rd   No              35   387     17    89
      Yes             13    75     14    76
Crew  No               0   670      0     3
      Yes              0   192      0    20

 

이 경우는 열이 Sex와 Age라는 2계층으로 나뉘어졌습니다. 

 

 

col.vars 옵션

 

열의 계층을 선택합니다. 만약 Sex를 사용하기 원한다면 아래와 같이 입력하면 됩니다. 

 

> ftable(Titanic,col.vars=("Sex"))
                     Sex Male Female
Class Age   Survived                
1st   Child No              0      0
            Yes             5      1
      Adult No            118      4
            Yes            57    140
2nd   Child No              0      0
            Yes            11     13
      Adult No            154     13
            Yes            14     80
3rd   Child No             35     17
            Yes            13     14
      Adult No            387     89
            Yes            75     76
Crew  Child No              0      0
            Yes             0      0
      Adult No            670      3
            Yes           192     20
반응형

댓글