파이썬은 statistics 모듈을 임포트하는 것만으로 다양한 수학적 표현과 통계 데이터를 손쉽게 처리할 수 있습니다. 이 모듈을 활용하면 평균, 중앙값, 최빈값 등 여러 종류의 통계 연산과 수학적 계산을 아주 간단한 코드로 수행할 수 있습니다.
아래 함수들은 표본(sample) 또는 모집단(population) 데이터의 대푯값을 계산할 때 사용됩니다.
| mean() | 데이터의 산술 평균(average) 값을 구합니다. |
| harmonic_mean() | 데이터의 조화 평균 값을 구합니다. |
| median() | 데이터의 중앙값(median)을 구합니다. |
| median_low() | 낮은 중앙값(low median)을 구합니다. |
| median_high() | 높은 중앙값(high median)을 구합니다. |
| median_grouped() | 그룹화된 데이터의 중앙값과 50번째 백분위수를 계산합니다. |
| mode() | 가장 많이 나타난 값(최빈값)을 구합니다. |
mean() – 산술 평균
mean() 함수는 시퀀스나 반복 가능한(iterable) 자료에 담긴 표본 데이터의 산술 평균, 즉 흔히 말하는 평균값을 계산합니다. 모든 값을 더한 뒤 데이터 개수로 나누는 가장 기본적인 평균 방식입니다.
예제
import statistics
nums = [1, 2, 3, 3, 4, 5]
print("평균값 : ", end="")
print(statistics.mean(nums))
실행 결과
평균값 : 3
harmonic_mean() – 조화 평균
harmonic_mean() 함수는 시퀀스 또는 반복 가능한 형태의 실수(real-valued) 데이터에 대해 조화 평균을 계산합니다. 조화 평균은 속도나 비율처럼 역수 관계의 데이터를 다룰 때 특히 유용하며, 항상 산술 평균보다 작거나 같은 값이 됩니다.
예제
import statistics
nums = [1, 2, 3]
print("조화 평균값 : ", end="")
print(statistics.harmonic_mean(nums))
실행 결과
조화 평균값 : 1.6
median() – 중앙값
median() 함수는 정렬된 데이터에서 가운데 위치한 중앙값을 계산합니다. 데이터 개수가 홀수이면 정확히 가운데 값을 반환하고, 짝수이면 가운데 두 값의 산술 평균을 반환합니다.
예제
import statistics
nums = [1, 3, 5, 7]
print("중앙값 : ", end="")
print(statistics.median(nums))
실행 결과
중앙값 : 4.0
median_low() – 낮은 중앙값
median_low() 함수는 데이터 개수가 홀수일 때는 일반적인 중앙값을 반환하지만, 짝수일 경우에는 가운데 두 원소 중 더 작은 값을 반환합니다.
예제
import statistics
nums = [1, 2, 2, 3, 3, 3]
print("median_low 값 : ", end="")
print(statistics.median_low(nums))
실행 결과
median_low 값 : 2
median_high() – 높은 중앙값
median_high() 함수는 데이터 개수가 홀수일 때는 일반적인 중앙값을 반환하지만, 짝수일 경우에는 가운데 두 원소 중 더 큰 값을 반환합니다.
예제
import statistics
nums = [1, 2, 2, 3, 3, 3]
print("median_high 값 : ", end="")
print(statistics.median_high(nums))
실행 결과
median_high 값 : 3
median_grouped() – 그룹화된 데이터의 중앙값
median_grouped() 함수는 그룹화된(grouped) 데이터의 중앙값을 계산하며, 동시에 해당 데이터의 50번째 백분위수(50th percentile)를 구할 때도 사용됩니다.
예제
import statistics
nums = [2, 2, 3, 4]
print("median_grouped 값 : ", end="")
print(statistics.median_grouped(nums))
실행 결과
median_grouped 값 : 2.5
mode() – 최빈값
mode() 함수는 이산형(discrete) 또는 명목형(nominal) 데이터에서 가장 자주 등장하는 데이터 포인트, 즉 출현 횟수가 가장 많은 값을 반환합니다.
예제
import statistics
nums = [2, 2, 3, 4, 4, 1, 2]
print("최빈값 : ", end="")
print(statistics.mode(nums))
실행 결과
최빈값 : 2