Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- Blog
- 통계학
- 한빛미디어서평단
- 시각화
- tensorflow
- 블로그
- Pandas
- MySQL
- 파이썬
- 서평단
- 파이썬 시각화
- 독후감
- MATLAB
- 매틀랩
- 리눅스
- Ga
- 월간결산
- Python
- 텐서플로
- Visualization
- 티스토리
- Tistory
- Google Analytics
- SQL
- matplotlib
- Linux
- 딥러닝
- 서평
- 한빛미디어
- python visualization
Archives
- Today
- Total
pbj0812의 코딩 일기
[통계학] PYTHON 으로 t-test 구현하기 본문
0. 목표
- PYTHON 으로 t-test 구현하기
1. t-test
- 설명
2. 구현하기
1) library 호출
import numpy as np
2) 데이터 생성
a = [1, 4, 3, 6, 4, 7, 8, 10, 5, 11]
b = [2, 5, 6, 3, 7, 4, 8, 3, 9, 19]
a_num = np.array(a)
b_num = np.array(b)
3) t-test 구현
# 평균
a_mean = np.mean(a_num)
b_mean = np.mean(b_num)
# 분산
def var(inp):
tmp = []
for i in range(len(inp)):
tmp.append((inp[i] - np.mean(inp))**2)
result = np.sum(tmp) / (len(inp) - 1)
return result
a_var = var(a_num)
b_var = var(b_num)
# 통합분산
var_a_b = ((len(a_num) - 1) * a_var + (len(b_num) - 1) * b_var) / ((len(a_num) - 1) + (len(b_num) - 1))
# 표준오차
se_a_b = np.sqrt(var_a_b * (1 / len(a_num) + 1 / len(b_num)))
# t-test 구현
t_test = (a_mean - b_mean) / se_a_b
print(t_test)
- 결과 : -0.37882446154538096
3. scipy 결과와 비교
- 결과 : Ttest_indResult(statistic=-0.37882446154538096, pvalue=0.7092495883757508)
- 구현 결과와 동일
from scipy import stats
stats.ttest_ind(a, b)
4. 참고
'Science > 통계학' 카테고리의 다른 글
[통계학] python, sql 로 t-test 구현 (1) | 2023.02.21 |
---|---|
[통계학] z-score 를 python, MySQL 로 구현하기 (0) | 2023.02.15 |
[통계학] 정규분포 그래프 그리기 (0) | 2021.08.08 |
[통계학] SkillMetrics(python) 을 통한 테일러 다이어그램 그리기 (0) | 2021.01.13 |
[통계학] PYTHON 을 통한 AUPRC 구현 및 sklearn 과 비교 (3) | 2020.11.12 |