본문 바로가기
부트캠프(LIKELION AIS7)/수업

[AI스쿨 7기, 3주차] 통계

by aimaimee 2023. 4. 14.

범주형, 연속형/ 분석도구/ 기술통계, 추론통계/ 중심 경향치/ 분위수/ range/ 편차, 분산/ 신뢰구간/ 귀무가설, 가설 검정/ 상관분석, 상관계수/ 회귀분석

221007

유재명 강사님 강의

1. 이상한 통계학의 용어

  • 모수 : parameter
  • 회귀분석: 돌아가는 것과는 직접적인 관련이 없음
  • 통계적 가설 검정: 과학에서 검정은 실증주의(하고 싶은 주장을 입증) / 통계는 반증주의(틀린 것을 찾아서 까는 것)
  • 용어를 보고 뜻을 짐작x

2. 변수의 종류

  • 행 row 사례, 열 column 변수

2.1 범주형 : 종류, 이름

  • 숫자로 표시가 되어도 양적인 개념이 아니다.
  • ex) 주민등록번호 뒷번호 첫글자. 1,2,3,4
  • 아빠가 1이고 아들이 3이니까 평균내서 2가나오면 여자가 한명있다?ㅋㅋㅋㅋㅋㅋ
  • 그래서 연산이 의미가 없다.
  • 초-중-고-대 처럼 순서가 있을 수 있지만, 간격이 일정하지 않다.
  • 주거형태, 고향, 학력, 출석

2.2 연속형 변수

  • 무게, 나이, 시간, 거리, 자녀의 수, 시험 점수
  • 자녀가 1.5일 수는 없으니까 반만 내 자식ㅋㅋㅋㅋㅋㅋ 이럴 수 없으니 애매하지만 연속형에 포함될 수 있다.

3.분석 도구

3.1 엑셀

  • 데이터 분석에 가장 널리 사용됨
  • 최대 백만행, 1만6천열 크기의 데이터만 열 수 있음
  • 우리나라 국민만 해도 5천만명
  • 복잡한 계산도 쉽지 않다. : 엑셀에 있는 함수가 얼마 되지 않는다. UI 특성 상 복잡한 식을 쓰면 알아보기 힘들어진다.
  • 유전자 기호 SEPT2, MARCH1 이 날짜로 자동으로 바뀜 : 704/3597편의 논문 중

3.2 R

  • 통계 전용 프로그래밍 언어
  • 최신 통계 기법 구현
  • 통계 분석이 간단
  • 프로그래밍 배경 지식이 덜 필요

3.3 Python

  • 범용 프로그래밍 언어
  • 원래는 교육, 웹 개발에서 사용했는데, 최근 데이터 분석에도 활발히 사용(2010~)
  • 구글, 인스타그램, 유튜브 등도 파이썬으로 구현됨
  • 머신러닝, 인공지능 등도 있어서 학계와 산업계에서 사실상의 표준
  • 프로그래밍 배경 지식이 있을 때 편리
  • 데이터 분석 이외의 목적에도 활용이 가능

4. 기술통계와 추론통계

4-1. 기술통계 : 데이터를 묘사, 설명

  • 보통 말하는 통계 낸다. 는 것에 해당
  • 중심경향치
    • 분위수 : 쉽게 말하면 등수 : 데이터에서 각각의 순위가 어느 정도인가
    • 변산성 측정치 : 데이터가 어떻게 퍼져 있는가?

4.2 추론통계 : 데이터를 바탕으로 추론, 예측

  • 학문적으로 보면 비중이 높은 쪽은 추론 통계

5. 기술통계

5.1 중심 경향치 : 평균, 중앙값 : 어디에 데이터가 몰려 있는가?

  • 평균
    • 극단값에 영향을 크게 받는다. ex) 10, 20, 30, 40, 50 보다 500 하나가 들어있을 경우 120으로 평균이 확 뛴다.
    • 1986년 미국 노스캐로라이나 대학 졸업생 평균 초봉 조사 : 마이클 조던 : 지리학과
  • 중간값 : korean median..??ㅋㅋㅋㅋㅋ
    • 중위수라고도 함. 중위소득, 중위가격
    • 값이 짝수개일 때는 가운데 두 값의 평균
  • 최빈값 : 가장 많은 사례에서 관찰된 값
    - 범주형 변수에서 유용
    - 연속형일 때는 구간을 나눠서 구함 : 30대 25% 등
  • 중심 경향치 in Python
    df = pd.read_excel('dataset/car.xlsx')

5.2 분위수 Quantile : 크기순으로 정렬된 데이터를 q개로 나누는 위치의 값

  • 사분위수Quartile (데이터를 4등분)
    • 최소값, 제1사분위수(하위25%), 제2사분위수(중간값), 제3사분위수(상위25%), 최대값
    • 우리나라는 5분위로 많이 나눠서 한다.
  • 백분위수 Percentile
    • 데이터에서 순위를 퍼센트로 표현
    • 0% - 50%(=중간값=제2사분위수)-100%
    • 3명 중의 3등은 0퍼센타일

5.3 범위 range

  • (최대값 - 최소값)
  • 극단값이 있으면 커짐
  • 그래서 IQR을 사용함(1사분위수와 3사분위수 사이 간격)
  • inter quartile range
  • 3사분위수-1사분위수
  • 극단값은 최소, 최대값 근처에 있으므로 극단값의 영향이 적다.

5.4 상자 수염 그림

  • 수염 최대 길이는 IQR의 1.5배까지, 넘어가면 점을 따로 찍는다.

5.5 편차 deviation

  • 평균보다 얼마나 높냐, 낮냐

5.6 분산 : 편차 제곱의 평균

  • df.price.var()는 편차 제곱의 평균과 약간 차이가 있다.
  • 평균절대편차 : 편차의 절대값을 해서 평균
  • 분산은 숫자 단위가 엄청 커진다. 직관적으로 알기 어려움. 그래서 루트를 씌운다.
  • 이것을 표준편차라고 한다. 표준편차를 제곱하면 다시 분산이 된다.

6. 추론통계(82쪽)

  • 모집단과 무작위 표본(용어가 헷갈릴 수 있는데, 외울 수 밖에 없다!!)
    • 모집단(population) : 관심이 되는 집단 전체 : 전국 중고차 시장에서 거래되는 모든 차량
    • 표본(sample) : 모집단의 부분집단 : 274건의 데이터 전체가 하나의 표본
  • 모수(population parameter) : 모집단의 파라미터. 모집단의 특성을 나타내는 값
    • 분모라는 의미로 모수를 쓰면 다 틀린 개념
    • 추론통계는 모수를 추정하는 것
    • 모수의 예 : 모집단의 평균(모평균), 모집단의 분산(모분산), 모집단의 IQR, 모집단의 중간값
  • 통계량(sample statistic)
    • 표본에서 얻어진 수로 계산한 값(통계치라고도 한다.)
  • 표집(sampling) : 모집단에서 표본을 추출하는 절차. 표본추출이라고도 한다.

7. 추정

7.1 추정 : 배달앱 배달 예상 시간.

  • 통계량으로부터 모수를 추측하는 절차
  • 점추정 : 하나의 수치로 추정 : 30분 걸립니다. 배달
  • 구간 추정 : 구간으로 추정 : 20-40분 걸립니다. 우리가 진상인거 대비ㅋㅋㅋㅋㅋ

7.2 신뢰구간 confidence interval

  • 대표적인 구간 추정 방법
  • 신뢰라는 단어를 믿지 마세요ㅋㅋㅋㅋㅋㅋ
  • 신뢰구간 = 통계량 +- 오차범위
  • 95% 신뢰구간이라는 말을 할 때, 95%라는 수치를 신뢰수준이라고 한다.
  • 신뢰수준 낮춘다는 것은 오차 범위를 줄인다는 것. 틀릴 확률이 높아진다.

7.3 신뢰 수준

  • 신뢰 구간에 모수가 존재하는 표본의 비율
  • 신뢰 수준이 높음 - 많은 표본을 포함 - 더 넓은 오차 범위 - 정보가 적음
  • 신뢰 수준이 낮음 - 적은 표본을 포함 - 더 좁은 오차범이 - 정보가 많음
  • 신뢰 수준 100% 어떤 경우에도 틀리지 않겠다 : 일본 짤 ㅋㅋㅋㅋㅋㅋㅋ 20대, 30대, 40대 / 동북부 중북부 홋카이도 해외 도핔ㅋㅋㅋㅋ
  • 평균의 신뢰구간이 제일 간단하다.
  • pip install pingouin(99쪽)

7.4 신뢰 구간에 영향을 주는 요소

  • 신뢰수준을 정상적으로 낮추는 방법은 표본의 크기를 키우는 것이다. !!!!!!!!!
  • 데이터가 적어지면, 신뢰구간이 넓어짐.
  • 부트스트래핑

8. 통계적 가설 검정

  • Karl Pearson : UCL 세계 최초 통계학과, 독일뽕 ㅋㅋㅋ Carl Pearson
  • Ronal Fisher : 농학, 뮤리엘 브리스톨이랑 홍차랑 우유 순서, 남친이 지나가다가 실험해!ㅋㅋㅋㅋ
  • Exact Test를 만들었다 : 뮤리엘 브리스톨이 이김
  • 반증주의 철학에 심취

9. 귀무가설과 대립가설(112쪽)

  • 귀무가설 : 기각하고자 하는 가설
  • 귀무가설이 기각되면 우리가 하려는 말이 맞겠지 하고 대립가설을 채택
  • 귀무가설 수립 -> p < 유의수준(보통 0.05) -> 통계적으로 유의함. 대립가설 채택
  • 귀무가설 : 설마 900만원은 아니겠지? pg.ttest(df.price, 900, confidence=0.95)
  • p val 이 0.02가 나와서 통계적으로 유의하니까 귀무가설을 기각.
  • p<0.05 : 귀무가설 기각한다 이건 외우기!!!!!!!

9.1 가설 검정의 결과

  • 귀무가설이 참인데 귀무가설 기각 : 1종 오류 : False Alarm
  • 귀무가설 거짓인데 귀무가설을 기각 안함 : 2종 오류 : Miss
  • 귀무가설은 혼내주고 싶은 애 ㅋㅋㅋㅋ 얘가 참이면 딴청 피워야 함ㅋㅋㅋㅋ 결론 내면 안됨
  • 귀무가설이 참일 경우!!!! 1종 오류는 유의 수준만큼밖에 발생 안한다.(잘못 기각할 경우가 5%)
  • 신뢰구간으로 나오는 결론과 pvalue로 나오는 결론이 똑같다.

10. 상관분석(150페이지)

10.1 상관계수 correlation coefficient

  • 두 변수의 연관성을 -1~1범위로
  • 어휘력과 독해력/ 주가와 금/ 엔진 성능과 고객 만족도
  • 1이면 우상항, -1이면 우하향
  • 1 : 일란성 쌍둥이의 키, 한 변수가 증가하면 다른 변수도 증가한다.
  • 주행거리가 길면 가격이 떨어질 것이다. pg.corr(df.price, df.mileage)
    • pg.corr(df.price, df.mileage)
    • 표본상관계수 -0.67616 (모상관계수 -0.74, -0.61)
    • 귀무가설 : 모상관계수 = 0.0
    • p 는 거의 0 <0.05
    • 우리의 결론은 귀무가설 기각(모상관계수 !=0)
  • 기울기와 상관계수는 좀 다르다. 기울기가 커도 직선 상에 점이 있으면 상관계수가 높은 것이고, 점이 떨어져 있으면 상관계수는 낮다.
    • pg.corr(df.mileage, df.other_car_damage)
    • 표준 상관계수는 0.00795 신뢰구간은 (-0.11~+0.13)
    • 귀무가설: 모상관계수=0
    • p = 0.89
    • 귀무가설을 채택하는 법은 없음. 결론 유보

11. 회귀분석(172쪽)

  • 지도학습 supervised learning
    - x(독립변수)를 이용해서 y(종속변수)를 예측하는 것
  • 회귀분석 regression : 종속변수(y)가 연속일 경우
  • 선형모형 : 직선의 형태를 띈 모형. 직선의 방정식
    - 기울기 : w
    - y절편 : b(x가 0일 때, y의 예측치)
from statsmodels.formula.api import ols
m = ols("price ~ mileage", data = df).fit()
m.summary()
  • 밑의 두개가 중요하다. intercept와 mileage
  • intercept : 절편
  • mileage
  • 부산 서울 여행가서 기름값+ 중고차값 5만원도 내랔ㅋㅋㅋㅋㅋㅋㅋ
  • std err과 t는 안봐도 됨
  • pvalue, 신뢰구간
  • 기울기(mileage)의 p value는 본다. intercept의 p value는 안본다.
    • 신뢰구간 -0.006에서 -0.005라서 숫자는 작지만 0은 아니기 때문에 귀무가설 기각
  • 범주가 2개인 경우(195쪽)
    • m = ols("price ~ model", data = df).fit()
    • 범주형 변수가 있을 경우 더미 코딩이라는 희안한 방식을 쓴다. (model은 아반떼 이런거)
  • 더미 코딩
    - 아반떼*3 이런거 못하니까 곱하거나 더할 수 있는 변수를 만들어줌
    - single이 마이너스.
    coef 기울기. 곱해지는 계수

회귀분석 질문

overtime의 기울기
overtime의 기울기에 대한 해석은? 결론 내릴 수 없음
marriage의 기울기
marriage의 기울기에 대한 해석은?
married가 rating이 높음/ single이 rating이 높음/ 결론내릴 수 없음

댓글