프로그래밍/파이썬

EDA - 1단계 : 데이터 다루기 - 통계(2)

매 석 2023. 7. 19. 14:14
반응형

- 과거 내용

 

EDA - 1단계 : 데이터 다루기 - 통계

과거 내용 DataFrame - 통계 1. 최대, 최소 max와 min 함수를 이용해 최대, 최소 값을 구할 수 있다. axi...

blog.naver.com

 

 

- DataFrame - 통계(2)

1. 공분산

#원본 데이터
   col1  col2
0     2     1
1    -2     4
2     5     6
3    -3     5

#공분산
print(df.cov())
           col1      col2
col1  13.666667  0.333333
col2   0.333333  4.666667

 

cov를 사용해서 두 값 사이의 공분산을 구할 수 있다.

min_periods와 ddof의 옵션을 사용할 수 있다.

공분산의 개념은 아래 링크를 통해 확인할 수 있다.

2. 첨도

#원본 데이터
   col1  col2
0     2     1
1    -2     4
2     5     6
3    -3     5

#첨도
print(df.kurt())

col1   -2.71624
col2    1.50000
dtype: float64

 

첨도는 데이터의 분포가 정규분포보다 뾰족하면 0보다 큰 값,

그렇지 않으면 0보다 작은 값이다.

kurt를 사용해서 구할 수 있다.

3. 표준오차

#원본 데이터
   col1  col2
0     2     1
1    -2     4
2     5     6
3    -3     5

#표준오차
print(df.sem())

col1    1.848423
col2    1.080123
dtype: float64

 

표준오차는 모평균과 표본평균의 표준차이를 말한다.

즉 실측치와 관측치의 차이를 의미한다.

sem으로 구할 수 있다.

4. 왜도

#원본 데이터
   col1  col2
0     2     1
1    -2     4
2     5     6
3    -3     5

#왜도
print(df.skew())

col1    0.475026
col2   -1.190340
dtype: float64

 

전체적으로 왼쪽으로 데이터가 치우쳐지면 양수,

오른쪽으로 치우쳐지면 음수의 값이 나온다.

skew를 통해서 구할 수 있다.

5. 상관계수

#원본 데이터
   col1  col2
0     2     1
1    -2     4
2     5     6
3    -3     5

#상관계수
print(df.corr(method='spearman'))

      col1  col2
col1   1.0   0.2
col2   0.2   1.0

 

상관계수는 두 변수가 얼마나 상관이 있는지 -1~+1까지 나타낸 것이다.

-1은 서로 반대, +1은 서로 같은 방향을 의미한다.

corr를 통해서 구할 수 있고, method로 spearman, pearson, kendall를 사용할 수 있다.