중심경향치 (평균, 최빈치, 중앙값) :: R 기초 통계 - mindscale
Skip to content

중심경향치 (평균, 최빈치, 중앙값)

중심경향치(central tendency measures)란?

  • 자료의 중심을 나타내는 숫자
  • 자료 전체를 대표
  • 평균, 중간값, 최빈값 등이 있다

평균

  • 평균(mean): 자료의 합을 자료의 갯수로 나눈 값

다음과 같은 리스트가 있을 때:

x = c(100, 100, 200, 400, 500)

mean를 이용해 다음과 같이 평균을 구할 수 있다.

mean(x)
[1] 260

평균은 극단적인 값(outliers)의 영향을 잘 받는다. 위의 x에서 500 하나를 1700으로 바꾸었을 뿐이지만 전체 평균은 크게 변한다.

y = c(100, 100, 200, 400, 1700)
mean(y)
[1] 500

소득처럼 분포가 비대칭적인 경우에도 평균이 자료를 잘 대표하기 어렵다.

사칙연산 중 덧셈이 가능해야 하므로, 등간척도/비율척도에서 쓸 수 있다. 서열척도와 명목척도에서는 쓸 수 없다.

중간값

  • 중간값(median): 자료를 크기 순으로 정렬했을 때 정 가운데에 있는 값
  • 자료의 상위 50%와 하위 50%를 가르는 지점
  • '중앙값' 또는 '중위수'라고도 한다.
median(x)
[1] 200

극단적인 값에 영향을 받지 않는다.

median(y)
[1] 200

데이터가 짝수 개일 경우에는 가운데 두 값의 평균

median(c(100, 200, 300, 400))
[1] 250

자료를 크기 순으로 정렬할 수만 있으면 되므로 서열척도/등간척도/비율척도에서 쓸 수 있다. 명명척도에서는 쓸 수 없다.

최빈값

  • 최빈값(mode): 가장 빈번하게 관찰/측정되는 값

최빈값을 찾으려면 먼저 빈도표를 만든다.

ft = table(x)
ft
x
100 200 400 500 
  2   1   1   1 

빈도표를 as.vector에 넣어 벡터로 바꿉니다. which.max는 벡터에서 가장 큰 값의 인덱스를 알려줍니다. 1번째가 가장 크다는 것을 알 수 있습니다.

i = which.max(as.vector(ft))
i
[1] 1

fti번째를 확인해보면 100이 2번으로 가장 많이 나온 것을 알 수 있습니다.

ft[i]
100 
  2