Orange3를 엘리쌤과 인공지능에서 알게된후 Python 기초 통계를 공부하면서 최대한 Orange3로 따라하면서 통계도 공부하고, 오렌지도 공부하고 덩달아 파이썬도 익히는 시간을 갖기로 하였습니다.
1.0 단일표본 t-test
1.1 Crate Table Widget
1.2 Edit Domain Widget
1.3 distributions widget
1.4 Python ScriptTtest_1sampResult(statistic=array([-1.07107994]), pvalue=array([0.31201445]))
평균이 90이다.
2.0 독립표본 t-test
2.1 두 집단 dat_M
와 dat_F
가 있음
dat_M = [117, 108, 105, 89, 101, 93, 96, 108, 108, 94, 93, 112, 92, 91, 100, 96, 120, 86, 96, 95]
dat_F = [121, 101, 102, 114, 103, 105, 101, 131, 96, 109, 109, 113, 115, 94, 108, 96, 110, 112, 120, 100]
2.2 두 집단의 평균 차이가 통계적으로 유의미한지 t-검증
import scipy.stats
scipy.stats.ttest_ind(dat_M, dat_F, equal_var=False)
Ttest_indResult(statistic=-2.670573872669349, pvalue=0.01108318824471652)
2.3. 파이썬에서는 [2]와 같이 하면 p값이 0.05 보다 적으므로 귀무가설을 기각하여 두 집단간의 차이는 유의미 하다고 판단합니다. 오렌지에서는 할 수 있는 위젯이 없는 것 같더군요.
3.0 이번에는 오렌지에서 파이썬스크립트를 이용합니다. 아래 그림과 같이 위젯을 배치&연결합니다.
3.1 Create Table
3.2 스크립터에 아래와 같이 입력합니다.
import pandas as pd
from Orange.data.pandas_compat import table_from_frame,table_to_frame
df = table_to_frame(in_data)
df = df.stack().reset_index()
out_data = table_from_frame(df)
3.3 Data Table에서 컬럼단위 데이터가 스택되었슴을 확인합니다.
3.5 Box Plot Widget . p값이 0.05보다 적네요. 그런데 계산값이 조금 차이가나네요. 공분산 때문인 것 같네요.
댓글 없음:
댓글 쓰기