코딩하는 수학과생 :: '사분위수' 태그의 글 목록

반응형

'사분위수'에 해당되는 글 3건

  1. R / Rstudio 사분범위(IQR)를 구해보자
  2. R / Rstudio 사분위수 / 분위수를 구해보자(분위수 편)
  3. R / Rstudio 사분위수 / 분위수를 구해보자(사분위수 편) 2
반응형

반응형

다음 데이터의 분포를 살펴보겠습니다~

 

 

이 자료의 범위(range)는 몇일까?

[범위 = 최댓값 - 최솟값] 이므로 범위 = 30 - 0 =  30 이 된다.

대부분의 데이터가  10 과  21 사이에 모여있는 것이 보인다.

이 자료를 가지고 통계적 분석을 할 경우에  과  30 의 자료 때문에 문제가 생길 수 있다.

 

사분범위는 이러한 특이값(이상값)이 발생한 문제를 해결해줄 수 있다.
사분범위(IQR, InterQuartile Range)는 제3사분위수와 제1사분위수 사이의 범위이다.

식으로 나타내면  IQR = Q3 - Q1이다.

 

IQR은 range와는 다르게 통계적으로 매우 유용하다.

쉽게 예를 들어 두 가지 자료가 있다고  하자

자료 1) (1, 2, 6, 10, 18, 30)    # range = 29    / IQR = 13

자료 2) (1, 2, 6, 10, 18, 3000) # range = 2900 / IQR = 13

 

자료 1,2의 range를 비교해보면  29 와  2900 로 엄청난 차이가 난다.

하지만 사분범위는 모두  13 으로 같다.

특이값들을 제외함으로써 자료의 중심의 성격을 더 잘 이해할 수 있게 되는 것입니다.

 

 

사분위수에 대해 제대로 이해하고 있지 않다면 이전 글에 설명해 놓은걸 보고 오시면 됩니다^.^

사분위수 : R / Rstudio 사분위수 / 분위수를 구해보자(사분위수 편)

 

R / Rstudio 사분위수 / 분위수를 구해보자(사분위수 편)

이번에는 구해볼것은 사분위수입니다~~ 사분위수를 처음 봤을때는 헷갈리는게 너무 많지만 의미를 잘 이해하고 제가 정한 메뉴얼대로 구하는 연습을 하다보니까 어느샌가 조금 친근하게 느껴지더라구요 ㅋ.ㅋ 데이..

dooooh.tistory.com

 

IQR = Q3 - Q1 = 23 - 8 = 15

 

----------------------------------------------------------------------------

 

손 계산으로 사분범위를 구하는 방법을 보겠습니다.

 

step1) 사분범위를 구하기 위하여 Q1Q3값을 구한다.

#Q1 값은 데이터의 25%가 있는 지점이다.

#Q3 값은 Q1의 반대쪽 25%인 데이터의 75%가 있는 지점이다.

 

step 2) Q1과 Q3 사이의 범위를 구한다.

#사분범위는 Q1과 Q3 사이의 범위

 

손 계산을 한다면 이러한 과정을 거쳐 사분 범위를 구할 수 있습니다.

 

----------------------------------------------------------------------------

 

이번에는 R을 이용하여 사분범위(IQR)을 구해보겠습니다.

 

R에는 사분범위를 구할 수 있는 IQR() 함수가 존재합니다.

IQR() 함수에 자료를 넣어주면 사분범위값이 나옵니다.

 

 

위에 들었던 예시로 구해봤습니다. 사분범위는 모두  13 으로 같은 값이 나옵니다.

 

자료를 보다 보면 항상 동떨어진 값들이 존재합니다. 이런 값들을 무시하게 되면 정말 이상한 결과가 나와버릴 수도 있어서 이 특이치라 불리는 값들을 찾아서 제거해주는 과정은 꼭 필요합니다.

 

사분범위를 손으로 구해서 상자 그림 그리면서 하다 보면 계산 실수도 엄청하게 되는데 코딩으로 하면 함수 하나만 쓰면 바로 구해지니 코딩을 하는 것에 대해 너무 어렵게 생각하지 않아도 될 것 같습니다. ^ㅇ^

 

저도 코딩하면 어려운 것 이라고만 생각하고 있었는데 너무 함수들이 잘 만들어져 있어서 부담 없이 공부할 것 같아요 ㅋ.ㅋ

반응형
Posted by dooooh
,
반응형

사분위수를 구해봤으니 이번엔 분위수를 구해보겠습니다.

n-분위수는 자료들을 n등분을 한 것을 말합니다. 말 그대로 4-분위수는 4등분한 값을 말합니다.

그러므로 작은 범위인 사분위수를 먼저 이해한다면 분위수를 더 쉽게 이해할 수 있습니다.

사분위수2020/03/06 - [R] - R / Rstudio 사분위수 / 분위수를 구해보자(사분위수 편)

 

R / Rstudio 사분위수 / 분위수를 구해보자(사분위수 편)

이번에는 구해볼것은 사분위수입니다~~ 사분위수를 처음 봤을때는 헷갈리는게 너무 많지만 의미를 잘 이해하고 제가 정한 메뉴얼대로 구하는 연습을 하다보니까 어느샌가 조금 친근하게 느껴지더라구요 ㅋ.ㅋ 데이..

dooooh.tistory.com

 

-------------------------------------------------------------------

 

n-분위수란 오름차순 정렬되어 있는 자료를 n 등분한 자료를 말합니다.

 

 

2-분위수 = median

2분위수는 주어진 자료를 2 등분합니다. 또한 2분위수는 중앙값(median)이라고도 부릅니다.

 

 

4-분위수 = quartiles

4분위수는 주어진 자료를 4개의 그룹으로 분리시킵니다. 또한 사분위수(quartiles)라고도 부릅니다.

 

10분위수도 마찬가지로 자료를 10등분 하며 deciles라고 부릅니다.

 

또한 백분위수(percentiles)라는 것이 존재하는데 이는 자료를 100등분 하는 것을 말합니다. 

 

-------------------------------------------------------------------

 

이제 분위수의 개념을 알았으니 R을 이용하여 구해보도록 하겠습니다.

 

R에서 분위수를 구하는 함수는 quantile(x, y) 함수입니다.

x는 자료, y는 0~1 사이의 값 이 들어갑니다.

quantile(data, 0.5)는 중앙값을 구해주고

quantile(data, 0.25)는 제1 사분위수를 구해줍니다.

 

마찬가지로 quantile(data, 0.99)는 100등분을 하는 99번째 값을 구해줍니다.

 

-------------------------------------------------------------------

 

시작으로 R을 이용하여 10분위수(deciles)를 구하는 방법을 알아보겠습니다.

 

10분위수도 마찬가지로 quantile 함수만 알고 있다면 누구나 쉽게 구할 수 있습니다.

 

 

위의 자료의 20%의 자료가 존재하는 부분이  6  이고 30%의 자료가 존재하는 곳이  10.7  임을 알 수 있습니다.

 

하지만 quantile 함수는 분위수의 개념과 약간 다르다고 느낄수도 있습니다. 분위수는 자료를 n등분 하는거지만 quantile 함수는 자료를 2:8  3:7로 나눈 값을 보여준 것입니다.

 

10분위수를 한번에 다 구하는 방법도 있습니다.

quantile(x, y)에서 y 값에 c(0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9) 값을 넣어주는 것입니다.

4분위수라 하면 y값에 c(0.25, 0.5, 0.75) 값을 넣어주면 사분위수들이 다 나오게 됩니다.

 

 

위와같이 함수에 이러한 값을 넣어줌으로써 모든 10분위수들을 다 구할 수 있습니다.

 

-------------------------------------------------------------------

 

위 자료를 다시한번 예를들어 27백분위수를 구해보겠습니다.

 

 

여기서 27백분위수는  10.13  이 나왔습니다.

 

그렇다면  10 27백분위수보다 높을까요 낮을까요?

 

정답은 "낮다"입니다. 

 

이해를 돕기위해 26백분위수도 구해보겠습니다.

 

 

26백분위수는  9.76  이 나왔습니다. 이 말은 10이라는 값은 26백분위수27백분위수 사이에 존재한다는 것입니다.

 

또한 분위수는 우선적으로 오름차순 정렬을 해준 뒤 등분하는 것이기 때문에  10  은  10.13  보다 아래에 있다고 볼 수 있습니다.

 

-------------------------------------------------------------------

 

 기본적인 분위수에 대해 알아봤습니다. 마지막으로 요약정리를 해보겠습니다.

 

1) 분위수는 등분을 하는 것이기 때문에 Q1, Q2, Q3 세 개로 쪼개면 4-분위수 인것처럼

n개를 기준으로 쪼개게 되면 n+1분위수가 되는 것입니다. 

 

2) 2분위수는 median

4분위수는 quartiles

10분위수는 deciles

100분위수는 percentiles라고 부릅니다.

 

3) 사분위수는 자료를 4개의 그룹으로 백분위수는 자료를 100개의 그룹으로 나누는 것입니다.

 

-------------------------------------------------------------------

반응형
Posted by dooooh
,
반응형

이번에는 구해볼것은 사분위수입니다~~ 사분위수를 처음 봤을때는 헷갈리는게 너무 많지만 의미를 잘  이해하고 제가 정한 메뉴얼대로 구하는 연습을 하다보니까 어느샌가 조금 친근하게 느껴지더라구요

ㅋ.ㅋ

 

데이터의 개수가 적은 경우에는 적은 계산으로 구할 수 있지만 개수가 많아지면 손계산으로는 좀... 그렇기 때문에 R을 이용해서 구해보겠습니다!

 

사분위수란 데이터를 4등분 해주는 수들을 말합니다.

 

Q1, Q2, Q3, Q4로 나타내고 Q2는 좌우로 데이터가 50%씩 존재하는 중위수와 같은 의미를 가집니다.

 

제1 사분위수(Q1)

제2 사분위수(Q2)

제3 사분위수(Q3)

제4 사분위수(Q4)

Q1아래 25% 데이터가 존재

Q2아래 50% 데이터가 존재

Q3아래 75% 데이터가 존재

Q4아래 100% 데이터가 존재

 

----------------------------------------------------------------------------------------------------------------

 

그러면 이제 사분위수의 의미를 알았으니 한번 구해보겠습니다.

 

사분위수를 구하는 방법입니다.

 

step1) 데이터들을 오름차순 정렬시킨다.

 

step2) 중앙값을 찾는다.

 

step3) 중앙값을 기준으로 좌, 우의 데이터의 중앙값들을 찾는다.

 

이제 예를 들어보겠습니다.

 

60, 15, 10, 3, -4, 3, -30

 

이런 홀수개 데이터가 있을때 사분위수를 구해봅시다.

 

1) 오름차순 정렬

 

-30, -4, 3, 3, 10, 15, 60

 

2) 제2 사분위수 = 중앙값

3을 기준으로 좌우로 데이터가 3개씩 존재하므로 중앙값은 3이 됩니다.

∴ Q2 = 3 

 

3) 좌,우 데이터의 중앙값

 

|| -30, -4, 3 || 10, 15, 60 ||

 

좌측 데이터의 중앙값은  -4  우측 데이터의 중앙값은  15  가 됩니다.

 

∴ Q1 = -4, Q3 = 15

 

----------------------------------------------------------------------------------------------------------------

 

만약 데이터의 개수가 짝수인 경우에는 어떤 값을 제2 사분위수로 봐야할까요?

 

-30, -4, 3, 10, 15, 60

 

이러한 경우에는 중앙값을 구했던 것과 같이 가운데 두 수의 평균제2 사분위수로 합니다.

 

Q2 = (3 + 10) / 2 =  6.5 

 

중위수를 공부했기 때문에 Q2를 구하는 과정을 바로 이해가 됩니다. 그렇다면 Q1Q3는 어떻게 구할까요?

조금 헷갈릴 수 있지만 의미를 잘 이해하고 위의 step을 잘 따라가다보면 쉽게 구할 수 있습니다.

 

Q1은 중앙값을 기준으로 좌측데이터의 중앙값입니다. 

 

Q2가  6.5  이므로  6.5 왼쪽의 데이터들을 보면

 

-30, -4, 3

 

입니다. 여기서의 중앙값이므로  Q1 = -4  임을 알 수 있습니다.

#당연히 또 왼쪽 데이터가 짝수인 경우 가운데값들의 평균을 내주면 되겠쥬? :)

 

마찬가지 방법으로  Q3 = 15  임을 알 수 있습니다.

 

=====

데이터가 홀수개인 경우 Q1Q3을 구할때 Q2를 포함해서 구하는 방법도 있으나 딱히 정해진게 아니라서 위에서 말한 step을 거쳐서 구하시면 됩니당.

=====

 

----------------------------------------------------------------------------------------------------------------

 

이제 사분위수의 의미와 구하는 방법을 알았으니 R을 이용하여 구해보겠습니다.

 

R에는 다행히(?) 사분위수를 한번에 구해주는 quantile() 함수가 존재합니다.

 

Q1 <- quantile(data, 0.25)

 

이런식으로 사용합니다.

R에서는 Q1, Q3을 구할때 Q2를 포함한 값의 중앙값으로 계산을 하였네요..

손계산하고 출력값이 다르다고해서 너무 당황하지 않으셔도 됩니당 ㅋ.ㅋ

구하는 방법이 다른거지 틀린게 아니니까요 (●'◡'●)a

 

이번에 사분위수를 제대로 이해했다면 다음글에 쓸 분위수도 똑같은 개념이기 때문에 쉽게 이해할 수 있을거에요~

 

나중에 더 뒤쪽 공부를 하다가 까먹으면 다시 앞쪽으로 와서 보고 가면 되겠지만 이해하지 못하고 넘어간다면 다시 공부해야하는 불상사가 생길수도 있으니까... 한번할때 외우지말고 이해하는게 좋은것같아요!!

반응형
Posted by dooooh
,