10. 통계학, 기본개념
통계학에서 필수적인 개념들을 중심으로 살펴보도록 한다.
개념 정의
- 통계학 (Statistics)
- 데이터의 수집, 구성, 분석, 해석, 표현에 관한 학문
- 기술통계학(Descriptive Statistics) -> 수집된 데이터를 잘 설명하는 것
- 추측통계학(Inferential Statistics) -> 데이터를 바탕으로 추론
\(\Rightarrow\) 데이터를 수집하여 표현하고, 분석하여 미래를 예측하는 학문
- 모집단(Population)
어떤 질문이나 실험을 위해 관심의 대상이 되는 개체나 사건의 집합
Ex) 전교 남학생의 키 - 모수(Parameter)
모집단의 수치적인 특성
Ex) 키의 평균 - 표본(Sample)
모집단에서 선택된 일부 개체나 사건의 집합
도수(Frequency)
어떤 사건이 실험이나 관찰로부터 발생한 횟수 (= 빈도)
- 표현방법
- 도수분포표(Frequency Distribution Table)
- 막대그래프(Bar Graph) \( \rightarrow \) 질적 자료 표현
- 히스토그램(Histogram) \( \rightarrow\) 양적 자료 표현
막대그래프는 사이 간격이 떨어져있고 순서가 상관없지만,
히스토그램은 비어있는 간격이 없고 순서가 중요하다
줄기-잎 그림(Stem and Leaf Diagram)
양적 데이터를 줄기와 잎으로 구분
데이터를 보기 쉽게 해주고 특정 구간의 부포를 파악하기 용이하다.
상대도수
도수를 전체 원소의 수로 나눈 것
확률을 계산하는데 중요한 개념이므로 꼭 이해를 하고 있어야 함
Scipy
: 어떤 데이터를 수집하고, 모집단의 수치적인 특성을 파악하기 위해 이용할 파이썬 모듈
평균
statistics
모듈 : mean, median 등의 함수가 들어있는 파이썬 모듈 (추가적인 설치 필요없음)
평균은 두 가지 종류로 나누어진다.
- 모평균 \(\mu\)
모집단 전체 자료일 경우 - 표본 평균 \(\bar{x}\)
모집단에서 추출한 표본일 경우
평균의 경우 극단 값의 영향을 많이 받기 때문에 (\([1, 2, 3, 100])\)
이럴 경우, 중앙값을 이용하는 것이 좋다.
중앙값(Median)
자료를 순서대로 나열했을 때 가운데 있는 값
분산(Variance)
편차의 제곱의 합을 자료의 수로 나눈 값
편차 : 값과 평균의 차이
- 자료가 모집단일 경우 : 모분산
- 자료가 표본일 경우 : 표본분산
표본분산은 n-1로 나눈다.
평균을 기준으로 많이 떨어져 있으면 분산값이 크게 나온다.
따라서 값들이 평균을 중심으로 많이 퍼져있는지 적게 퍼져있는지 파악할 수 있다.
위의 사진에서 \(b\)의 경우 \(a\)에 비해 굉장히 큰 값이 나온 것을 확인할 수 있는데
\(b\)에 존재하는 이상점(평균과 거리가 먼 값)으로 인해 편차가 크게 나온 것이다.
표준편차(Standard Deviation)
분산의 양의 제곱근
- 모표준편차(Population Standard Deviation)
- 표본표준편차(Sample Standard Deviation)
statistics
: 모듈에서는 다음의 함수를 이용한다.
- 표준편차 :
stdev()
- 모분산 :
pvariance()
- 모표준편차 :
pstdev()
numpy
모듈에서는 다음의 함수를 이용한다.
- 모분산 :
var()
- 모표준편차 :
std()
ddof
인자를 1
로 하면 표본분산과 표본표준편차를 구할 수 있다.
- 표본분산 :
var(a, ddof=1)
- 표본표준편차 :
std(a, ddof=1)
범위(Range)
자료를 정렬하였을 때 가장 큰 값과 가장 작은 값의 차이
파이썬 기본 내장 함수인 max()
, min()
을 사용해도 되고,
numpy
모듈의 max()
, min()
을 사용해도 된다.
극단적인 값이 발생하면 엄청나게 차이가 나는 경우가 있는데, 그럴 때 값을 비슷하게 조절할 때 사용이 되는 개념이다.
사분위수(Quartile)
전체 자료를 정렬했을 때 1/4, 1/2, 3/4 위치에 있는 숫자
- Q1 : 제 1사분위수
- Q3 : 제 3사분위수
numpy
모듈의 quantile()
을 이용한다. (quantile : 백분위수, quartile : 사분위수)
- 두번째 인자로 0 ~ 1 사이의 값을 입력해주고, 입력한 값의 부분에 해당하는 값이 어떤 값인지 찾아준다.
자료들이 어떤 범위에 존재한는지 확인할 수 있다.
범위(Range) 보다 대략적인 데이터의 모양을 파악하는데 용이하다.
- 사분위범위(IQR; Interquartile Range) : Q3 - Q1
이상적인 값이 있더라고 대략적인 값을 보다 잘 걸러낼 수 있다.
Z-Score
어떤 값이 평균으로부터 몇 표준편차 떨어져 있는지를 의미하는 값
- 모집단의 경우
값에서 평균을 뺀 후에 모표준편차나 표준편차를 나눠준다.
- 표본의 경우
값에서 표본평균을 뺀 후에 표본표준편차로 나눠준다.
scripy
모듈의 stats.zscore()
를 이용한다.
ddof
인자를 1
로 넣어주면 표본표준편차에 대한 Z-Score 값을 반환한다.
'프로그래머스인공지능스쿨' 카테고리의 다른 글
[2주차 - Day4] 인공지능 수학 - 확률과 확률분포(2) (0) | 2021.04.29 |
---|---|
[2주차 - Day4] 인공지능 수학 - 확률과 확률분포(1) (0) | 2021.04.29 |
[2주차 - Day3] 인공지능 수학 - 자료의 정리(1) (0) | 2021.04.29 |
[2주차 - Day2] 인공지능 수학 - 미적분(2) (0) | 2021.04.28 |
[2주차 - Day2] 인공지능 수학 - 미적분(1) (0) | 2021.04.28 |