⭐️ 통계가 중요한 이유: 분석한 데이터를 기반으로 의사결정 하기 위해!
1️⃣ 기술통계
➖ 특정 대표값으로 데이터 요약
➖ 평균, 중앙값, 분산, 표준편차 등 사용
📍 분산 (Variance)
➖ 데이터 값들이 평균으로부터 얼마나 떨어져 있는지
➖ 분산이 클수록 평균으로부터 넓게 퍼져 있는 형태
➖ (각 데이터 값 - 평균) 제곱한 값의 평균 = 분산
📍 표준편차 (Standard Deviation)
➖ 루트(분산) = 표준편차
➖ 값이 클수록 평균으로부터 넓게 퍼져 있는 형태
➖ 분산과 달리 원래 데이터 값과 동일한 단위로 변환
2️⃣ 추론통계
➖ 표본 데이터로 모집단 특성 추정
➖ 신뢰 구간, 가설 검정
📍 신뢰구간 (Confidence Interval)
➖ 모집단 평균이 특정 범위 내 있을 것이라고 확률로 표시한 것
➖ 일반적으로 95% 신뢰구간 사용 (0.95)
📍 가설검정 (Hypothesis Testing)
➖ 모집단에 대한 가설 검증을 위해 사용
➖ 귀무가설 : 검증하려는 가설 틀림 (Ex. 효과, 영향 X)
*P-value에 의해 귀무가설 기각 여부 결정
➖ 대립가설 : 귀무가설과 반대로 가설 주장 (Ex. 효과, 영향 O)
⭐️ 코딩 전 라이브러리 호출
import pandas as pd # 데이터 분석
import numpy as np # 다양한 계산 수행
import matplolob.pyplot as plt # 시각화1
import seaborn as sns # 시각화2
1️⃣ 위치추정
➖ 데이터 중심 확인
➖ 대표적 방법 : 평균, 중앙값
data = [85,90,78,92,88,76,95,89,84,91]
mean = np.mean(data) # 평균
median = np.median(data) # 중앙값
2️⃣ 변이추정
➖ 데이터들이 서로 얼마나 다른지 확인
➖ 분산, 표준편차, 범위 등 사용
📍 범위 (Range)
➖ 최댓값 - 최솟값
➖ 데이터가 어느 정도 변동성 가지는지 확인
data = [85,90,78,92,88,76,95,89,84,91]
variance = np.var(data) # 분산
std_dev = np.std(data) # 표준편차
data_range = np.max(data) - np.min(data) # 범위
3️⃣ 데이터 분포 탐색
➖ 어떻게(HOW) 데이터가 이뤄져 있는지 확인
➖ 대표적 방법 : 히스토그램, 박스 플롯
plt.hist(data, bins=5) # 히스토그램으로 시각화
plt.title('histogram')
plt.show()
plt.boxplot(data) # 박스 플롯으로 시각화
plt.title('boxplot')
plt.show()
4️⃣ 이진 데이터와 범주 데이터 탐색
➖ 데이터들이 서로 얼마나 다른지 확인
➖ 최빈값 주로 사용
➖ 대표 방법 : 파이 차트, 막대 그래프
# 만족/불만족 빈도 분석
satisfaction = ['satisfaction', 'satisfaction', 'dissatisfaction', 'satisfaction', 'dissatisfaction', 'satisfaction', 'satisfaction', 'dissatisfaction', 'satisfaction', 'dissatisfaction']
satisfaction_counts = pd.Series(satisfaction).value_counts()
satisfaction_counts,plot(kind = 'bar')
plt.title('satisfaction distribution')
plt.show()
5️⃣ 다변량 분석
➖ 여러 변수 간 관계 분석
data = {'TV' : [230.1,44.5,17.2,151.5,180.8],
'Radio' : [37.8,39.3,45.9,41.3,10.8],
'Newspaper' : [69.2,45.1,69.3,58.5,58.4],
'Sales' : [22.1,10.4,9.3,18.5,12.9]}
df = pd.DataFrame(data) # 데이터 분석 편하게 하기 위해 데이터프레임 사용
sns.pairplot(df)
plt.show()
df.corr() # 파이썬 기본은 분산이라 표준편차로 나타내기 위해 기재
📍 상관관계
➖ 데이터끼리 서로 관련 있는지 확인
➖ 두 변수 간의 관계 측정
➖ 점수별 상관관계 정도
⭐️ 인과관계와의 차이
| 상관관계 | 인과관계 |
|---|---|
| 두 변수 간의 관계가 있는지 여부 판단 | 한 변수가 다른 변수에 미치는 영향 (원인-결과 명확) |
[느낀 점]
데이터 분석 때 df.mean()만 계속 쓰다가 mean = np.mean(data) 이렇게 쓰려니 참신하고 헷갈리긴 했지만 계속 복습하면서 분리 시킬 수 있게 해야겠다! 데이터 분석 때 파이썬 많이 사용해서 그런지 조금은 익숙해져서 다행인지...🥺