관리 메뉴

밤 늦게까지 여는 카페

기본적인 통계 개념 다시 공부하기 본문

For Fun/잡학 지식

기본적인 통계 개념 다시 공부하기

Jㅐ둥이 2026. 8. 17. 01:07
반응형

안녕하세요. 이번에는 기본적인 통계 개념을 정리해보려고 합니다.

  • 분명 고등학생 때도 대학생 때도 공부했던 내용들인데 왜 이렇게 생소한지 모르겠네요... ㅋㅋ쿠ㅠ

1. 기술통계 (Descriptive statistics)

데이터를 요약하여 전체적인 특징과 분포 형태를 쉽게 파악할 수 있는 통계적 기법입니다.

 

대표적으로 중심 경향성과 산포도 지표가 있습니다.

 

1.1. 중심 경향성

평균

  • 모든 데이터를 더한 뒤 데이터 개수로 나눈 값입니다.
  • mean = sum(data) / len(data)

 

중앙값

  • 데이터를 크기 순으로 정렬했을 때 중앙에 있는 값입니다.
  • 데이터 개수가
    • 홀수일 때: median = sorted(data)[len(data) // 2]
    • 짝수일 때: median = ( sorted(data)[len(data) // 2] + sorted(data)[len(data) // 2 + 1] ) / 2

 

최빈값

  • 데이터 중 가장 많이 존재하는 값입니다.
import collections

counts = collections.Counter(data).most_common()
max_count = counts[0][1]
result = [counts[0][0]]

for i in range(1, len(counts)):
    if counts[i][1] != max_count:
    	break
    result.append(counts[i][0])
print(result)

 

 

1.2. 산포도

분산 & 표준편차

  • 평균으로부터 데이터들이 얼마나 떨어져있는지 보여주는 값입니다.
mean_of_data = mean(data)
var = sum([pow(x - mean_of_data, 2) for x in data]) / len(data)
std_dev = sqrt(var)

 

 

변동계수

 

  • 분산과 표준편차를 평균 대비 살펴보는 값입니다.
  • coef = std_dev / mean

 

2. 추론통계 (Inferential statistics)

추론통계는 데이터를 설명하는 것이 아니라 표본에서 구한 데이터를 얼마나 신뢰할 수 있는지 확인합니다.

그래서 모집단, 표본이라는 말이 많이 나옵니다.

 

 

표준오차

  • 표본에서 구한 평균을 얼마나 신뢰할 수 있는 지 보여주는 값입니다.
  • std_err = std_dev / sqrt(len(data))

 

신뢰구간

  • 표본 평균을 바탕으로 모집단의 평균을 확률적으로 표현하는 값입니다.
  • 95% ci = sample_mean ± 1.96*std_err

 

t-test

  • 표본에서 유의미한 차이가 있는지 판단하는 테스트입니다.
  • | (추정치 - 귀무가설값) / 표준오차 | > 1.96
  • 추정치: 통계값
  • 귀무가설값: 아무런 효과나 차이가 없다고 가정할 때 설정하는 기준값, 대체로 0
    • '실험군 A가 B보다 더 좋을 것이다' 라는 가정을 깔고 가는 실험이라면 0이 아닙니다!

 

 

반응형