R에서 범주형 데이터를 그리는 방법(예제 포함)


통계에서 범주형 데이터는 이름이나 레이블을 사용할 수 있는 데이터를 나타냅니다.

예는 다음과 같습니다:

  • 흡연 상태(‘흡연자’, ‘비흡연자’)
  • 눈 색깔(“파란색”, “녹색”, “개암색”)
  • 교육 수준(예: ‘고등학교’, ‘학사 학위’, ‘석사 학위’)

이러한 유형의 데이터를 시각화하기 위해 일반적으로 사용되는 세 가지 차트는 다음과 같습니다.

  • 막대 차트
  • 모자이크 플롯
  • 그룹별 상자 그림

다음 예에서는 R에서 이러한 각 플롯을 생성하는 방법을 보여줍니다.

예 1: 막대 차트

다음 코드는 특정 데이터 프레임의 이동 빈도를 시각화하기 위해 막대 차트를 만드는 방법을 보여줍니다.

 library (ggplot2)

#create data frame
df <- data. frame (result = c('W', 'L', 'W', 'W', 'W', 'L', 'W', 'L', 'W', 'L'),
                 team = c('B', 'B', 'B', 'B', 'D', 'A', 'A', 'A', 'C', 'C'),
                 points = c(12, 28, 19, 22, 32, 45, 22, 28, 13, 19),
                 rebounds = c(5, 7, 7, 12, 11, 4, 10, 7, 8, 8))

#create bar chart of teams
ggplot(df, aes (x=team)) +
  geom_bar()

x축은 각 팀의 이름을 나타내고 y축은 데이터 프레임에서 각 팀의 빈도를 나타냅니다.

다음 코드를 사용하여 차트의 막대를 가장 큰 막대에서 가장 작은 막대 순서로 정렬할 수도 있습니다.

 #create bar chart of teams, ordered from large to small
ggplot(df, aes (x= reorder (team, team, function (x)- length (x)))) +
  geom_bar(fill=' steelblue ') +
  labs(x=' Team ') 

예 2: 그룹별 상자 그림

군집 상자 그림은 범주형 변수로 그룹화된 숫자 변수를 시각화하는 유용한 방법입니다.

예를 들어, 다음 코드는 득점한 점수의 분포를 팀별로 그룹화하여 보여주는 상자 그림을 만드는 방법을 보여줍니다.

 library (ggplot2)

#create data frame
df <- data. frame (result = c('W', 'L', 'W', 'W', 'W', 'L', 'W', 'L', 'W', 'L'),
                 team = c('B', 'B', 'B', 'B', 'D', 'A', 'A', 'A', 'C', 'C'),
                 points = c(12, 28, 19, 22, 32, 45, 22, 28, 13, 19),
                 rebounds = c(5, 7, 7, 12, 11, 4, 10, 7, 8, 8))

#create boxplots of points, grouped by team
ggplot(df, aes (x=team, y=points)) +
  geom_boxplot(fill=' steelblue ')

x축은 팀을 표시하고 y축은 각 팀이 득점한 점수 분포를 표시합니다.

예시 3: 모자이크 플롯

타일형 도표는 단일 도표에 두 개의 서로 다른 범주형 변수의 빈도를 표시하는 도표 유형입니다.

예를 들어, 다음 코드는 단일 플롯에서 범주형 변수 “result” 및 “team”의 빈도를 표시하는 모자이크 플롯을 생성하는 방법을 보여줍니다.

 #create data frame
df <- data. frame (result = c('W', 'L', 'W', 'W', 'W', 'L', 'W', 'L', 'W', 'L'),
                 team = c('B', 'B', 'B', 'B', 'D', 'A', 'A', 'A', 'C', 'C'),
                 points = c(12, 28, 19, 22, 32, 45, 22, 28, 13, 19),
                 rebounds = c(5, 7, 7, 12, 11, 4, 10, 7, 8, 8))

#create table of counts
counts <- table(df$result, df$team)

#create mosaic plot
mosaicplot(counts, xlab=' Game Result ', ylab=' Team ',
           main=' Wins by Team ', col=' steelblue ') 

R의 모자이크 지형

x축은 게임 결과를 표시하고 y축은 4개의 다른 팀을 표시합니다.

추가 리소스

다음 튜토리얼에서는 R에서 다른 일반적인 플롯을 만드는 방법을 설명합니다.

R에서 누적 막대 그래프를 만드는 방법
R에서 클러스터된 막대 그래프를 만드는 방법
R에서 누적 점 플롯을 만드는 방법

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다