카테고리 없음
21. TIL) 통계학 1차시
kaseomi
2025. 1. 15. 19:29
728x90
오늘부터는 새롭게 통계학, 머신러닝에 대해서 공부해보고자 한다
일단 처음엔 통계학부터 차근차근 짚어보자
1.1 데이터 분석에 있어서 통계가 중요한 이유
데이터 기반의 의사결정을 내릴 수 있다
통계는 데이터 분석의 핵심. 데이터를 기반으로 패턴을 이해하고, 이를 통해 논리적이고 효과적인 결정을 내릴 수 있다. 기업은 이러한 통계를 활용해 더욱 현명한 선택을 하고, 더 나은 결과를 도출할 수 있음
1) 통계가 중요한 이유
☑️ 데이터를 분석하고 이를 바탕으로 결정을 내릴 수 있다
- 데이터를 이해하고 해석
통계는 데이터의 본질을 파악하고 의미 있는 결과를 추출하는 데 필수적 - 데이터 요약 및 패턴 발견
방대한 데이터를 요약하고 중요한 패턴을 쉽게 발견할 수 있도록 도움 - 결론 도출 지원
통계적 추론 과정을 통해 데이터 기반으로 결론을 내릴 수 있음 - 효과적인 의사결정
분석 결과를 기반으로 한 통계는 기업이 보다 현명한 결정을 내리도록 지원하며, 이를 통해 수익 창출로 이어짐
☑️ 통계를 활용한 데이터 분석은 필수이다
통계 없이는 데이터의 의미를 제대로 파악할 수 없음. 데이터 분석에 있어서 통계는 데이터를 해석하고, 행동 가능한 통찰력을 제공하는 강력한 도구
2) 실제로 통계가 어떻게 사용될까?
☑️ 고객 만족도 설문조사 분석
통계를 활용하면 고객의 불만 사항을 파악하고 이를 개선할 수 있음. 설문 조사 결과를 분석해 고객 만족도를 높이는 전략을 수립할 수 있음
☑️ 고객 유형별 세그먼트 상품 추천
통계를 사용하여 고객을 유형별로 분류하고, 각 유형에 적합한 상품을 추천할 수 있음. 이는 개인화된 마케팅과 고객 경험 향상에 효과적
☑️ 다양한 상황에서의 통계 활용
- 기업 전략 수립
통계는 데이터를 기반으로 기업의 중장기 전략을 수립하는 데 기여함 - 효과적인 마케팅 진행
광고 및 캠페인 효과를 분석하여 적절한 마케팅 전략을 수립할 수 있음 - 신제품 개발
시장 조사 데이터를 분석해 소비자 니즈에 부합하는 신제품을 개발할 수 있음
1.2 기술통계와 추론통계: 통계의 양대산맥
1) 기술통계
☑️ 데이터를 요약하고 설명하는 통계 방법
- 주요 사용 방법: 평균, 중앙값, 분산, 표준편차 등을 통해 데이터를 요약
- 장점: 데이터를 간단히 이해하고 요약할 수 있음
- 한계: 이상치(예외적인 데이터)를 완전히 반영하지 못함
주요 개념
- 평균: 데이터의 일반적 경향을 나타내는 대표값
- 중앙값: 데이터셋의 중간값으로, 이상치에 영향을 덜 받음
- 분산: 데이터가 평균에서 얼마나 퍼져 있는지를 나타냄
- 표준편차: 분산의 제곱근으로, 데이터의 변동성을 원래 단위로 표현
2) 추론통계
☑️ 표본 데이터를 통해 모집단의 특성을 추정하고 가설을 검정
- 주요 사용 방법: 신뢰구간, 가설검정 등을 통해 모집단을 예측
- 핵심 아이디어: 데이터의 일부(표본)로부터 전체(모집단)를 추정
주요 개념
- 신뢰구간: 모집단 평균이 특정 범위 내에 있을 확률(일반적으로 95%)
- 가설검정: 귀무가설(H0)을 검증하여 모집단의 특성을 판단(p-value 활용)
3) 기술통계와 추론통계의 활용 사례
- 기술통계:
- 회사의 매출 데이터를 요약(예: 평균 매출, 매출의 변동성)
- 추론통계:
- 일부 고객 설문조사 데이터를 활용해 전체 고객 만족도를 추정
1.3 다양한 통계 분석 방법 요약
1) 위치 추정
☑️ 데이터의 중심 확인
- 방법: 평균, 중앙값
- 예시: 학생들의 시험 점수에서 평균 점수와 중간 점수를 계산
- 파이썬 실습 코드:
import numpy as np
data = [85, 90, 78, 92, 88, 76, 95, 89, 84, 91]
mean = np.mean(data)
median = np.median(data)
print(f"평균: {mean}, 중앙값: {median}")
2) 변이 추정
☑️ 데이터들의 차이 확인
- 방법: 분산, 표준편차, 범위(range)
- 예시: 매출 데이터의 변이를 분석해 비즈니스 안정성 평가
- 파이썬 실습 코드:
variance = np.var(data) std_dev = np.std(data) data_range = np.max(data) - np.min(data) print(f"분산: {variance}, 표준편차: {std_dev}, 범위: {data_range}")
3) 데이터 분포 탐색
☑️ 데이터 값들의 분포 확인
- 방법: 히스토그램, 상자 그림(Box plot)
- 예시: 시험 점수의 분포를 시각적으로 표현
- 파이썬 실습 코드:
import matplotlib.pyplot as plt plt.hist(data, bins=5) plt.title('Histogram') plt.show() plt.boxplot(data) plt.title('Boxplot') plt.show()
4) 이진 데이터와 범주 데이터 탐색
☑️ 개수가 가장 많은 값(최빈값) 파악
- 방법: 막대 그래프, 파이 차트
- 예시: 고객 만족도 설문에서 만족/불만족의 빈도 분석
- 파이썬 실습 코드:
import pandas as pd 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) 상관관계 분석
☑️ 변수 간의 관련성 확인
- 방법: 상관계수 계산
- 예시: 공부 시간과 시험 점수 간의 상관관계 분석
- 파이썬 실습 코드:
study_hours = [10, 9, 8, 7, 6, 5, 4, 3, 2, 1] exam_scores = [95, 90, 85, 80, 75, 70, 65, 60, 55, 50] correlation = np.corrcoef(study_hours, exam_scores)[0, 1] print(f"공부 시간과 시험 점수 간의 상관계수: {correlation}") plt.scatter(study_hours, exam_scores) plt.title('Study Hours vs Exam Scores') plt.show()
6) 인과관계와 상관관계의 차이
☑️ 상관관계는 관계를 나타내고, 인과관계는 원인과 결과를 포함
- 예시: 아이스크림 판매량과 익사 사고 수 간에는 높은 상관관계가 있지만, 인과관계는 없음.
7) 두 개 이상의 변수 탐색
☑️ 여러 데이터 간의 관련성 분석
- 방법: 다변량 분석(Pairplot, Heatmap 등)
- 예시: 여러 마케팅 채널의 광고비와 매출 간의 관계 분석
- 파이썬 실습 코드:
import seaborn as sns import pandas as pd 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.title('Pairplot') plt.show() sns.heatmap(df.corr(), annot=True, cmap='coolwarm') plt.title('Correlation Heatmap') plt.show()