Acdong
Learn by doing
Acdong
전체 방문자
오늘
어제
  • 분류 전체보기
    • Economy
      • Saving Money
    • Self-improvement
    • Thoughts
    • Machine learning
      • Deep Learning
      • Chatbot
      • NLP
    • MLops
      • AWS
      • Container
      • Serving
    • Computer Vision
    • Data Science
      • ADsP
      • R
    • Project
    • Python
      • Data Structure & Algorithm
    • C,C++
    • API
      • ElasticSearch
    • Error Note
    • Network
    • RDBMS
      • SQL

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • [GitHub]

인기 글

태그

  • 어텐션
  • 머신러닝
  • R그래프
  • 존댓말 반말 분류
  • 회귀계수
  • 다중공선성
  • 이미지 전처리
  • nlp
  • Python
  • sbert
  • SentenceTransformer
  • 데이터 전처리
  • 포인터
  • Numpy
  • plot()
  • pandas
  • c포인터
  • R
  • 기계학습
  • R시각화

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
Acdong

Learn by doing

[R]. 그래프 시각화 ( 사분위수 , 히스토그램 , 상자그림 )
Data Science/R

[R]. 그래프 시각화 ( 사분위수 , 히스토그램 , 상자그림 )

2020. 6. 11. 15:38
728x90

사분위수

주어진 자료에 있는 값들을 크기순으로 나열했을 때 이것을 4등분하는 지점에 있는 값들을 의미한다.

자료에 있는 값들을 4등분하면 등분점이 3개 생기는데, 앞에서 부터

'1사분위수(Q1)' , '2사분위수(Q2)''3사분위수(Q3)'라고 부르며,

2사분위수(Q2)는 중앙값과 동일하다.

 

전체 자료를 4개로 나누었기 때문에 4개의 구간에는 각각 25%의 자료가 존재한다.

 

사분위수 예

 

평균이나 중앙값이 하나의 값으로 전체의 특성을 추정해볼 수 있는 도구인 것처럼

사분위수는 세 개의 값으로 전체의 특성을 추정하는 데 사용되며,

하나의 값 보다는 세 개의 값으로 전체의 특성을 추정하기 때문에 보다 많은 정보를 줄 수 있다.

 

예를 들어, 100명의 학생을 대상으로 영어 시험을 본 결과에 대해 사분위수를

 

Q1=60 , Q2=80 , Q3=90 이라고 가정해보자.

 

  • 25명의 학생은 성적이 60점 미만이다.
  • 25명의 학생은 성적이 60점~80점 사이이다.
  • 25명의 학생은 성적이 80점~90점 사이이다.
  • 25명의 학생은 성적이 90점 이상이다.
  • 90점 이상인 학생이 25명이나 되기 때문에 이번 영어 시험은 매우 쉬웠다.
  • 전체 50%의 학생이 80점 이상의 성적을 받았다.

R-code

mydata <- c(60,62,64,65,68,69,120)
quantile(mydata)
quantile(mydata , (0:10)/10)              #10% 단위로 구간을 나누어 계산
summary(mydata)

사분위수를 구할 때 가장 일반적으로 사용되는 함수가 summary()함수이다. 

summary()함수는 사분위수(1st Qu.,Median, 3rd Qu.)에

최댓값(Max.) 최솟값(Min.), 평균(Mean)을 함께 출력하기 때문에 편리하다.

 


히스토그램

막대그래프와 비슷한 그래프로 연속형 자료의 분포를 시각화할 때 사용한다.

막대그래프를 그리려면 값의 종류별로 개수를 셀 수 있어야 하는데, 키와 몸무게 등의 자료는 값의 종류라는 개념이 없어서 종류별로 개수를 셀 수 없다. 대신에 연속형 자료에서는 구간을 나누고 구간에 속하는 값들의 개수를 세는 방법을 사용한다. 

 

키의 경우 160미만 , 161~170 , 171~180 , 180 이상 등과 같이 나누고 각각의 구간에 해당하는 값들이 몇 개씩 있는지

세어서 이를 바탕으로 그래프를 그리는 방식이다.

 

dist <- cars[,2]
hist(dist,
    main="Histogram for 제동거리",    # 제목
    xlab ="제동거리",                       # x축 레이블
    ylab ="빈도수",                          # y축 레이블
    border="blue",                           # 막대 테두리색
    col="green",                              # 막대 색
    las=2,                                      # x 축 글씨 방향 (0~3) 2는 세로방향
    breaks=5)                                 # 막대 개수 조절 , 구간의 개수

 

 


상자그림

상자 수염 그림(box and whisker plot)으로도 부르며, 사분위수를 시각화하여 그래프 형태로 나타낸 것이다.

상자그림은 하나의 그래프로 데이터의 분포 형태를 포함한 다양한 정보를 전달하기 때문에 단일변수 수치형

자료를 파악하는 데 자주 사용된다.

상자그림의 구성요소

dist <- cars[,2]
boxplot(dist, main="자동차 제동거리")

 

boxplot.stats(dist)

 

  • stats는 사분위수
  • n 은 관측값의 수
  • conf 은 중앙값
  • out 특이값의 목록을 알려준다.

그룹이 있는 자료의 상자그림

boxplot(Petal.Length~Species, data=iris, main="품종별 꽃잎의 길이")

boxplot() 함수의 실행 결과를 보면 3개의 품종에 대한 상자그림이 함께 만들어진 것을 알 수 있다.

여기서 관찰할 수 있는 사실은 setosa 품종이 꽃잎의 길이가 가장 작고 virginica 품종에 대한 꽃잎의 길이가 전반적으로 가장 크다는 것이다. 또한 setosa 품종은 값들이 좁은 지역에 모여 있는 것을 알 수 있는데, 이는 setosa 품종의 꽃들은 꽃잎의 길이가 빗스함을 알려준다. 반면 versicolor 와 virginica 품종의 꽃들은 자료의 분포가 넓게 퍼져 있다.

반응형
저작자표시 비영리 (새창열림)

'Data Science > R' 카테고리의 다른 글

[R] 그래프 시각화 ( 상관분석 , Correlation analysis , 상관계수 r)  (0) 2020.06.15
[R] 그래프 시각화 ( 산점도 scatter plot, scatter graph)  (0) 2020.06.15
[R]. 그래프 시각화 ( 도수분표표 , 막대그래프 , 원그래프 )  (0) 2020.06.11
[R] R , R studio 설치 및 한글 깨짐 해결법  (0) 2020.06.10
[R] 기본 요약 정리 ( data frame , 데이터 읽기/쓰기 , apply() 함수 , 데이터 찾기 )  (1) 2020.05.12
    'Data Science/R' 카테고리의 다른 글
    • [R] 그래프 시각화 ( 상관분석 , Correlation analysis , 상관계수 r)
    • [R] 그래프 시각화 ( 산점도 scatter plot, scatter graph)
    • [R]. 그래프 시각화 ( 도수분표표 , 막대그래프 , 원그래프 )
    • [R] R , R studio 설치 및 한글 깨짐 해결법
    Acdong
    Acdong
    E-mail : alswhddh@naver.com / 자연어처리와 MLops 를 연구하고 있는 스타트업 개발자입니다.

    티스토리툴바