🌚 이번에는 상관관계 데이터를 연습해보려고 합니다.
상관관계는 말 그대로 그 둘사이의 관계 라고 생각하고있다.
상관관계
- 두 변수 간의 선형적인 관계두 변수 간의 선형 관계의 강도와 방향 (-1 ≤ r ≤ 1)
- 여기서는 상관계수가 중요한데 (r)로 표현을 하고
r = 1: 강한 양의 선형관계
r = 0: 선형 관계 없음
r = -1: 강한 음의 선형관계
1이면 강한 양의 선형, 0은 없음, -1은 음의 선형관계를 뜻합니다.
🌚 데이터 준비
# 데이터
import pandas as pd
df = pd.DataFrame({
'키': [150, 160, 170, 175, 165],
'몸무게': [42, 52, 75, 67, 56]
})
상관계수에 대한 t검정
귀무가설: 두 변수 간에 상관관계가 없다.
대립가설: 두 변수 간에 상관관계가 있다.
- stats.pearsonr(x, y) #피어슨
- stats.spearmanr(x, y) # 스피어맨
stats.kendalltau(x, y) # 켄달타우
켄달타우는 R과 파이썬의 실행방법 (install등)과 결과값을 일치하기에 조금 복잡해서 출제될 가능성이 낮을것같다
그렇다고 안나온다고 확정난건 아니니 참고만하기에 좋을것같다.
🌚 피어슨 상관계수 구하기
df.corr()
df의 corr을하면 수치형변수에 대해서 상관계수값을 확인해줍니다.
키와 키, 몸무게 몸무게는 1로 아주강한 양의 상관관계를 확인할 수 있습니다. 같은변수니 당연하죠
만약 2개의 상관관계값만 확인하고싶으면
print(df['키'].corr(df['몸무게']))
이렇게하면 확인가능합니다.
여기서 알아두어야할 것은 둘의 위치를 바꿔도 같은값이 나온다는 점 입니다~
그리고 나서 t검정을 할건데 t검정을해서 귀무,대립을 판별합니다.
# t검정
from scipy import stats
# 피어슨
print(stats.pearsonr(df['몸무게'], df['키']))
# 스피어맨
print(stats.spearmanr(df['몸무게'], df['키']))
'r'이 있는거 철자 꼭 확인하기!! 역시나 몸무게, 키 순서 바뀌어도 값은 같게 나옵니다.
pvalue값은 피어슨, 스피어만 모두 0.03정도가 나와서 대립가설 채택이 됩니다.
'자격증 > [빅분기] 빅데이터분석기사' 카테고리의 다른 글
[작업형3] 다선형회귀, 범주형이 섞여있다면? (0) | 2024.11.14 |
---|---|
[작업형3] 회귀분석-단순 선형 회귀 분석 (3) (0) | 2024.11.13 |
[작업형3] 회귀분석(1) (0) | 2024.11.11 |
[작업형3] 범주형 데이터 분석 - 적합도검정 (1) | 2024.11.09 |
[작업형3] 범주형 데이터 분석 - 카이제곱검정 (0) | 2024.11.08 |