멋쟁이사자처럼 AI스쿨 기초 통계 강의 내용을 정리한 포스팅입니다.
검정의 종류
1.무엇을 비교하냐
(1)연속형(평균)
집단에 따라
-2개 집단 (t검정)
: 독립표본 (별개의 집단)
: 대응표본 (짝)
-3개 이상 집단 (분산분석)
(2) 순서형
mwu (독립표본)
윌콕슨 (대응표본)
(3) 범주형(비율)
카이제곱 (기댓값)
-적합도
-독립성 (독립표본)
-맥니마 (쌍으로)
검정의 종류마다 언제 사용하는지
독립표본 t 검정 : 두 집단의 평균 비교
대응표본 t 검정 : 두 집단의 자료를 쌍으로 묶을 수 있을 때, 차이의 평균을 비교 (짝보다 많냐,적냐)
맨-휘트니 U 검정 : 두 집단의 순서형 변수를 비교 (순서가 골고루 섞여있는가), 데이터가 적거나 분포가 찌그러졌거나 극단값있을 때 t검정 대신에 쓸 수 있다. (t검정은 평균을 비교해서 왜곡될 수 있으니.../ 실무에서는 데이터 적은 경우가 거의 없어서 쓸 일 없다.)
분산 분석 : 셋 이상 집단의 평균 비교 (분산비가 얼마냐로 평균을 비교)
카이제곱 적합도 검정 : 관찰된 빈도가 기대되는 빈도와 일치하는지 확인 (5:5를 기대했는데 실제 6:4가 나옴)
카이제곱 독립성 검정 : 두 범주 변수 간에 관계가 있는지 (부서에 따라 결혼여부 관계가 있는지)
맥니마 검정 : 두 집단의 자료를 쌍으로 묶을 수 있을 때, 비율을 비교
1종 오류(False Alarm)
- 귀무가설이 참일 때, 기각할 확률 = 유의수준 (5%)
귀무가설이 참일 때, 기각하지 않을 확률 : 잘함 = 신뢰수준
귀무가설이 거짓일 때, 기각할 확률 : 잘함 = 검정력
귀무가설이 거짓일 때, 기각하지 못할 확률 (2종오류, miss)
!. 효과크기
상관 계수 (correlation coefficient)
두 변수의 연관성을 -1에서 +1 범위의 수치로 나타낸 것
ex) 어휘력과 독해력의 관계
주가와 금 가격의 관계
엔진 성능과 고객만족도의 관계
- 기울기
상관계수와 다른 개념이므로 주의 !
빨리 올라가냐, 늦게 올라가냐
- 공분산
공: 함께,같이
x의 편차와 y의 편차를 곱한 것의 평균
상관계수와 차이 : 공분산은 범위가 무한대다.
- 피어슨 적률 상관계수 : 공분산을 두 변수의 표준편차로 나눔 (-1에서 +1범위로 바꿈)
Q. 연식과 가격의 상관관계
pg.corr(df.mileage, df.price)
#피어슨 상관계수 : -0.67616
pg.corr(df.year, df.price)
#피어슨 상관계수 : 0.828908
주행거리를 보고 가격을 알 수 있는 정도 (0.6)
연식을 보고 가격을 알 수 있는 정도 (0.8)
자동차에서 연식은 범주형(순서)에 가까운데, 연속형인 것처럼 취급하고 분석을 해본 것
(연속형으로 보고 상관계수를 구했는데도 상관계수가 높음..)
year의 상관관계가 mileage보다 강하다.
-연식은 오래됐는데, 주행거리 짧고 관리잘 된 차 (차를 싸게 사고 싶을 때)
-차를 사서 신나게 돌아다니고 1년이라도 빨리 판다 (차를 비싸게 팔고 싶다)
상관분석 가설검정
귀무가설 : 모집단에서 상관계수는 0이다 (관련이 없다)
p < 0.05 : 귀무가설 기각 (상관이 있다)
p > 0.05 : 관련이 없다고 결론을 내릴 수는 없음 !!!
상관계수와 비단조적 관계
상관계수는 우상향 또는 우하향하는 단조적 관계를 표현
비단조적 관계는 잘 나타내지 못함 (올라갔다 다시 내려갔다)
그래프로 그려서 눈으로 보기 !
상관계수의 크기 해석
얼마나되야 큰거냐 ?? (Cohen이 언급한 말)
-0.1보다 작으면 낮음
-0.1부터 0.5면 중간
-0.5보다 크면 높음
---> 정답은 아니다...
실제 의사결정에서는 상대적으로 비교하는 것이 바람직 (고객만족도 조사 : 성능(0.2) vs. 조용(0.3) -> 조용(0.3)을 선택)
#상관 행렬
df.corr()
#자기 자신과의 상관계수는 1이다.
#대칭으로 표시된다. (a와 b <--> b와 a)
#대각선 기준으로 위만 보던지, 아래만 보던지하면 됨.
--> 상관행렬을 볼 때 조심할 것 !
: 상관행렬은 사실상 상관분석을 아~주 많이 한 것 (다중비교 문제)
: 뭔가는 상관이 있는 것처럼 튀어나올 수 있음. (이거 다중비교라서 이렇게 나온거아님 ㅡㅡ??)
스피어만 상관계수 : 순위 상관계수, 서열 상관계수
서열을 사용해서 피어슨 상관계수를 계산
ex) 소득과 행복 (피어슨 상관계수로 구하면 잘 안 나옴... 뒤로 갈수록 휘기 때문에, 피어슨은 직선을 가정)
두 변수의 관계가 비선형적이지만 단조적일 때 사용
--> 그래프를 그려보고, 어떤 상관계수로 구하는 게 좋을지 선택 (뭘 쓸지는 주관적인 부분임..)
켄달 상관계수
모든 사례를 짝지어 x의 대소관계와 y의 대소관계가 일치하는지 확인
ex) A, B, C, D --> 6가지 짝을 지어서 (+1 +1 +1 +1 +1 -1 ) / 6
데이터가 작을 때 사용
#순서대로 세워놓고
pg.corr(df.mileage, df.price, method='spearman')
#눈 감고 2개찍어서 가격이 더 낮을 경우??
pg.corr(df.mileage, df.price, method='kendall')
-0.75 + 0.25 == 0.5 (어떻게 0.25가 나왔지?? -랑 + 더했을 때 켄달 상관계수가 되도록)
(무작위로 2대의 중고차를 골랐을 때 주행거리가 긴 차가 짧은 차보다 가격이 싼 경우가 75%보다
상관과 인과 (correlation and causation)
두 변수의 상관관계는 인과관계를 담보하지 않음
상관관계가 있다고 반드시 인과관계가 있는 것은 아님 (반드시 원인 결과는 아님)
재3의 변인
-범죄 발생 건수와 종교 시설의 수는 양의 상관 관계 --> 인과 관계는 아님 --> 인구가 많아져서 범죄도 증가, 종교시설도 증가
-아이스크림, 범죄 (날씨가 따뜻해지면 외부활동이 많아져서 범죄가 늘어나고, 날씨가 따뜻해지면 아이스크림도 많이 먹고...)
-오만가지를 구하다보면 데이터가 튀게 나오는 거 / 제3의 변인처럼 공통으로 영향을 받는 게 있고
심슨의 역설
각 집단별 상관관계와 전체 총합의 상관관계는 다를 수 있음
ex) A학과 입학성적과 학점 / B학과 입학성적과 학점 / 전체 학교단위 입학성적과 학점
벅슨의 역설
ex) 데이트할 때, 외모/성격
통계에서 예측의 의미
시간적인 의미는 아님, 어떤 값에 대한 추론 (변수들 사이의 패턴을 파악하여 한 변수로 추론)
!. 통계와 머신러닝에서 회귀분석, 분류분석 차이 :
통계는 해석을 중시(과학 영역 : 왜?)하고, 머신러닝은 예측을 중시(공학 영역 : 잘 돌아가면 그게 뭐든...)
회귀분석
- 선형 모형(생각하는 틀) : 직선형태의 모델 --> 직선의 방정식
y= wx + b
ex) 피부암 사망률 (독립변수(x) : 위도 / 종속변수(y) : 천만명 당 사망자 수)
-상관계수와 차이점은..? 모델 (공식)이 있어서, x가 1증가할때마다 y가 어떻게 변할거다.
- 잔차
- 실제값과 예측값의 차이
-잔차분산 : 잔차를 제곱하여 평균낸 것 (cf. 분산 = 편차 제곱의 평균)
-잔차분사이 크다 (예측이 잘 맞지 않음) / 잔차분산이 작다 (예측이 잘 맞음)
- 최소제곱법
-잔차 분산이 최소가 되게 하는 w, b등 계수를 추정 (수 많은 선 중에서
회귀계수의 가설 검정
귀무가설 : 모집단에서 회귀계수가 0이다. (주로 기울기가 0이다)
p < 0.05 => 귀무가설 기각 (0이 아니다)
P > 0.05 -> 귀무가설 기각 못함 (결론 유보, 모르것다
,,)
p는 그냥 관심없이 지은거라, 의미있는 값이 아니다 !!
95%신뢰구간 [814.1 ~ 893.2]
신뢰구간 양쪽 경계선 안에 평균이 있을 거라고 생각을 하고 있다.
귀무가설이 그 경계보다 작은 쪽에 있으면 말도 안되니까 기각 (우리는 814.1, 893.2 사이에 있다고 생각하니까)
귀무가설에 800을 넣으면, p밸류 > 0.05 (기각)
pg.ttest(df.price, 800)
pg.ttest(df.price, 814.1) --> 0.05가 되게 만들어진 게 p밸류다.
R제곱
- 회귀 분석에서 예측의 정확성을 알기 쉽게 판단할 수 있게 만든 지표(0~1)
--> 계산과정은 다르나 에타제곱과 같다. (분산분석 : 에타제곱, 회귀분석 : R제곱 )
: 1- (잔차분산 / 분산)
잔차분산 --> 회귀분석으로 예측 / 분산 : 평균으로 예측할 때
-R제곱 = 0 (예측에 전혀 도움이 안 됨)--> 예측이 안 된다는 건 아님.
-R제곱 = 1(예측을 완벽하게 정확히 할수 있음)
R제곱과 피어슨 상관계수의 제곱 같다...!! (충격 !!ㅋㅋㅋ)
- R제곱을 읽는 방법
-주행거리가 가격의 분산 45.7%를 설명한다... (왓!??!)
다중 회귀 분석
독립변수가 2개 이상인 회귀분석 (복합적으로 영향을 주는 걸 다 합쳐서 분석해보자)
통계적 통제
:독립변수 x와 상관관계가 높은 요소 z가 존재할 경우, z가 종속변수 y에 미치는 영향이 x의 기울기에 간접 반영될 수 있음
ex) 주행거리 긴 차는 대체로 연식도 오래됐으니... 가격이 더 많이 떨어진다
- 실험적 통제
: 애초에 실험하는 단계에서 (처음 차 살 때부터 2005년식, 2010년식, 2015년식 사서 주행거리 0으로 보관만하다가 중고차 시장에 내놓기) z를 일정하게 유지하여, z의 영향을 제거한다.
-자연계 현상은 실험적 통제하기 어려움 (북극곰 크기...?, 과학실에서 실험하는 게 아닌이상...)
Q, 뭐가 더 영향을 미치냐?
- 표준화 (단위를 없애는 연산)
: 독립변수의 단위가 다르기 때문에, 종속변수에 대한 영향력을 비교하기 어렵다. 표준화를 통해 단위를 제거해서 상대적 영향력을 비교함
y_m = ols('price ~ scale(mileage) + scale(year)', df).fit()
y_m.summary()
#연식에서 1표준편차만큼 변할 때 218만원이 변한다.
#주행거리는 1표준편차만큼 변할 때 100만원이 변한다.
#연식의 영향이 더 크다고 볼 수도 있다.
y_m = ols('price ~ mileage.rank() + year.rank()', df).fit()
y_m.summary()
표준편차로 나누는 게 관행...(그냥 익숙해져야 한다... 딱히 공통기준으로 나눌 만한게 없어)
Q. 회귀분석과 분석분석은?
: 회귀분석 (예측) > 분산분석 (여러 개의 평균비교) > t검정 (2개의 평균비교)
'데이터 사이언스 스터디 > 통계' 카테고리의 다른 글
[데이터 분석 통계] A/B Test Summary (0) | 2024.12.11 |
---|---|
데이터분석을 위한 기초 통계2 (2) | 2024.12.11 |
데이터분석을 위한 기초 통계1 (3) | 2024.12.11 |