1-1. 통계가 중요한 이유
1. 데이터 분석에 기반한 의사 결정 > 통계를 활용한 데이터 분석은 필수
- 통계는 데이터를 이해하고 해석하는데 중요한 역할
- 데이터를 요약하고 패턴을 발견할 수 잇음
- 추론을 통해 결론 도출 과정 도움
- 기업이 보다 현명한 결정 + 수익 창출에 필요
2. 통계 활용 예시
- 고객 만족도 설문 조사 분석
- 고객 유형별 세그먼트 상품 추천 - 머신러닝 K-means clustering
- 기타(기업 전략 수립, 마케팅 진행, 신제품 개발 등)
1-2. 기술통계와 추론 통계
실제 예시
1) 기술통계 : 회사의 매출 데이터를 요약하기 위해 평균 매출, 매출의 표준편차 등을 계산
2) 추론통계 : 일부 고객의 설문조사 통해 전체 고객의 만족도 추정
1) 기술통계
데이터를 요약하고 설명하는 통계 방법 평균, 중앙값, 분산, 표준편차
데이터를 특정 대표값으로 요약해서 데이터의 대략적인 특징 간단 쉽게 파악 가능
BUT 예외(이상치) 존재 가능, 데이터 모든 부분 확인 X
평균 MEAN |
중앙값 MEDIAN |
분산 VARIANCE |
표준편차 STANDARD DEVIATION |
모든 데이터의 합 / 개수 | 크기 순 정렬, 중앙에 위치한 값 |
SUM( (데이터 - 평균) ^ 2 ) / 데이터 개수 |
ROOT(분산) |
데이터의 중앙을 나타냄 일반적 경향 파악에 유용 |
데이터의 중앙을 나타냄 이상치에 영향 덜 받음 |
평균으로부터 떨어진 거리 데이터의 흩어진 정도 측정 분산 ↑ = 평균에서 넓게 퍼짐 분산 ↓ = 평균에 가깝 모임 **제곱 단위로 표현 |
평균으로부터 떨어진 거리 분산의 제곱근 표.편 ↑ = 평균에서 넓게 퍼짐 표.편 ↓ = 평균에 가깝 모임 **다시 제곱근을 취해 원래 데이터 값과 동일한 단위로 변환 |
다섯 명의 학생이 받은 시험 점수가 70, 80, 90, 100, 60 평 균 80 (70 + 80 + 90 + 100 + 60) / 5 = 80 중앙값 80 데이터가 짝수 개수라면, 중앙에 있는 두 값의 평균 = 중앙값 |
|||
네 명의 학생이 받은 시험 점수가 70, 80, 90, 100 분 산 1) 평균 = (70+80+90+100) / 4 = 85 2) 각각 데이터에서 평균을 뺀 값 제곱 - (70-85)^2 = 225 - (80-85)^2 = 25 - (90-85)^2 = 25 - (100-85)^2 = 225 3) 모두 더한 후 데이터 개수로 나누기 - (225+25+25+225) / 4 = 125 |
네 명의 학생이 받은 시험 점수가 70, 80, 90, 100 표준편차 (1~3 분산과 동일) 1) 평균 = (70+80+90+100) / 4 = 85 2) 각각 데이터에서 평균을 뺀 값 제곱 - (70-85)^2 = 225 - (80-85)^2 = 25 - (90-85)^2 = 25 - (100-85)^2 = 225 3) 모두 더한 후 데이터 개수로 나누기 - (225+25+25+225) / 4 = 125 4) 루트 분산 - ROOT(125) = 약 11.18 (더 직관적) |
2) 추론통계
표본 데이터를 통해 모집단의 특성을 추정하고 가설을 검증하는 통계 방법 신뢰구간, 가설검정
핵심 데이터의 일부를 가지고 데이터 전체를 추정
신뢰구간 CONFIDENCE INTERVAL |
가설검정 HYPOTHESIS TESTING |
모집단의 평균이 특정 범위 내에 있을 확률 * 95% 신뢰구간 = 모집단 평균이 95% 확률로 이 구간 내에 있음! |
모집단에 대한 가설을 검증하기 위해 사용 귀무가설(H0) : 검증 가설 틀렸다! 변화가 없다, 효과가 없다 대립가설(H1) : 검증 가설 맞다! 변화가 있다, 효과가 있다 p-value = 귀무가설(H0) 기각 여부 결정 |
평균 만족도가 75점, 신뢰구간이 70점에서 80점 의미 = 95% 확률로 실제 평균 만족도가 이 범위 내에 있다 |
신규 교육 프로그램이 학생들 성적에 영향을 미치는지 알고 싶다 귀무가설(H0) : 프로그램이 성적에 영향 미치지 않는다 대립가설(H1) : 프로그램이 성적에 영향 미친다 |
1-3. 다양한 분석 방법
import pandas as pd # 데이터 분석에서 자주 사용되는 라이브러리
import numpy as np # 다양한 계산을 빠르게 수행하게 돕는 라이브러리
import matplotlib.pyplot as plt # 시각화 라이브러리
import seaborn as sns # 시각화 라이브러리2
1) 위치추정 : 데이터의 중심 확인
평균, 중앙값
data = [85, 90, 78, 92, 88, 76, 95, 89, 84, 91]
mean = np.mean(data) 86.8
median = np.median(data) 88.5
print(f"평균: {mean}, 중앙값: {median}")
2) 변이추정
분산, 표준편차, 범위(range) 등
data = [85, 90, 78, 92, 88, 76, 95, 89, 84, 91]
variance = np.var(data) 33.36
std_dev = np.std(data) 5.78
data_range = np.max(data) - np.min(data) 19
print(f"분산: {variance}, 표준편차: {std_dev}, 범위: {data_range}")
범위 RANGE |
범위(R) = 최대값 - 최소값 분포의 측도 데이터셋에서 가장 큰 값과 가장 작은 값의 차이 |
다섯 명의 학생이 받은 시험 점수가 60, 70, 80, 90, 100 범위 = 100 - 60 = 40 |
3) 분포 탐색
히스토그램, 상자그림(Box plot)
box plot
- 중앙값 = 주황색 선
- 박스 범위 = 상하위 25%
- 박스 밖 위아래 선 = 최대값, 최소값
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) 상관관계
두 변수 간의 관계 측정
-1 / 1 강력한 상관관계
-0.5 / 0.5 중간 정도의 상관관계
0 상관관계 없음
** 원인, 결과가 분명한 인과관계와 다름
ex) 아이스크림 판매량과 익사 사고 수 간의 상관관계는 높지만, 인과관계는 아님
공부 시간과 시험 점수 간의 상관관계를 보여주는 산점도(scatter plot)
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] 결과: 1.0(강력한 상관관계)
***[0, 1]을 해야 x와 x, y와 y사이의 관계가 아닌 x와 y 관계가 나옴
print(f"공부 시간과 시험 점수 간의 상관계수: {correlation}")
plt.scatter(study_hours, exam_scores)
plt.show()
6) 두 개 이상의 변수 탐색
여러 데이터끼리 관련 있는지 확인
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) *** pairplot으로 다변량 분석 가능 !!!
plt.show() *** 히스토그램 부분은 본인과 본인의 관계(값=1.0), 그 외 점으로 된 표를 확인
df.corr()
# heatmap까지 그린다면
sns.heatmap(df.corr())
1-4. 연습문제
1.데이터 분석에서 통계가 중요한 이유는 무엇인가요? 다음 보기 중에서 옳지 않은 것을 고르세요.
1) 통계는 데이터를 이해하고 해석하는 데 도움을 준다.
2) 통계는 데이터에서 패턴을 발견하고 미래를 예측하는 도구를 제공한다.
3) 통계는 모든 데이터 분석 결과가 항상 정확하고 확실하다는 것을 보장한다.
4) 통계는 복잡한 데이터를 간단한 요약 정보로 변환할 수 있다
해설 : 3. 통계는 확률과 추론에 기초하기 때문에 항상 불확실성이 존재
2. 다음 중 기술통계(Descriptive Statistics)에 해당하는 것은 무엇인가요?
1) 모집단의 평균을 추정하는 것
2) 데이터의 중앙값을 계산하는 것
3) 표본을 통해 모집단의 특성을 추론하는 것
4) 가설을 검증하는 것
해설 : 2. 기술 통계 : 데이터 요약 및 설명 / 추론 통계 : 표본 데이터를 통해 모집단에 대한 결론 내리는 과정
3. 다음 중 추론통계(Inferential Statistics)에 해당하는 것은 무엇인가요?
1) 데이터의 범위를 계산하는 것
2) 데이터의 분산을 계산하는 것
3) 표본을 기반으로 모집단의 평균을 추정하는 것
4) 데이터의 최빈값을 계산하는 것
해설 : 3. 기술 통계 : 데이터 요약 및 설명 / 추론 통계 : 표본 데이터를 통해 모집단에 대한 결론 내리는 과정
4. 어느 학교의 학생들 10명의 수학 점수는 다음과 같습니다: 78, 82, 85, 88, 90, 92, 94, 96, 98, 100.
이 데이터의 평균, 중앙값, 범위를 구하세요.
data = [78, 82, 85, 88, 90, 92, 94, 96, 98, 100]
평균
mean = np.mean(data) 92.3
중앙값
mean - np.median(data) 91 = 데이터의 개수가 짝수인 경우, 중간에 위치한 두 값의 평균
범위
data_range = np.max(data) - np.min(data) 22
5. 학생들의 수학 점수와 영어 점수가 각각 다음과 같을 때, 두 변수 간의 상관관계가 양의 상관관계인지, 음의 상관관계인지, 상관관계가 없는지 설명하고 그 이유를 얘기하세요.
수학 점수: 78, 82, 85, 88, 90, 92, 94, 96, 98, 100.
영어 점수: 70, 75, 80, 85, 85, 90, 90, 95, 95, 100.
math_scores = [78, 82, 85, 88, 90, 92, 94, 96, 98, 100]
eng_scores = [70, 75, 80, 85, 85, 90, 90, 95, 95, 100]
correlation = np.corrcoef(math_scores, eng_scores)[0, 1]
print(f"공부 시간과 시험 점수 간의 상관계수: {correlation}")
plt.scatter(study_hours, exam_scores)
plt.show()
해설 : 양의 상관관계를 가짐.
수학 점수가 증가할 때 영어 점수도 증가하는 경향이 있습니다.
6. 다음 중 인과관계(Causation)와 상관관계(Correlation)의 차이에 대한 설명으로 옳은 것은 무엇인가요?
1) 상관관계는 두 변수 간의 원인과 결과를 나타내고, 인과관계는 단순한 관계를 나타낸다.
2) 인과관계는 두 변수 간의 원인과 결과를 나타내고, 상관관계는 두 변수 간의 관계가 있지만 원인과 결과를 나타내지 않는다.
3) 상관관계와 인과관계는 동일한 개념이다.
4) 인과관계는 두 변수 간의 단순한 관계를 나타내고, 상관관계는 두 변수 간의 원인과 결과를 나타낸다.
해설 : 2. 인과관계는 하나의 변수가 다른 변수에 직접적인 영향을 미치는 것을 의미하며, 상관관계는 두 변수 간의 관계를 나타내지만, 직접적인 영향을 의미하지는 않습니다.
'통계' 카테고리의 다른 글
[통계학 기초] 6. 가설검정의 주의점 (1) | 2025.06.27 |
---|---|
[통계학 기초] 5. 상관관계 (0) | 2025.06.27 |
[통계학 기초] 4. 회귀 (Regression) (2) | 2025.06.27 |
[통계학 기초] 3. 유의성 검정 (6) | 2025.06.26 |
[통계학 기초] 2. 데이터의 분포 (12) | 2025.06.25 |