본문 바로가기

카테고리 없음

python ANOVA test 와 사후검정(tukey hsd) 하기

by m_ahh 2022. 11. 7.
반응형

 

Python 으로 2그룹 이상 ANOVA test할때... 

 

import pandas as pd
from scipy import stats

data=pd.read_csv('data.csv')

# stats f_oneway functions takes the grous as inpu and returns F, p
fvalue, pvalue = stats.f_oneway(data['A'],
                               data['B'],
                               data['C'])

print(f"Results of ANOVA test:\n The F-statistic is: {fvalue}\n The p-value is: {pvalue}")

 

그 다음 사후검정으로 Tukey hsd test 해줌

 

import statsmodels.formula.api as smf
import statsmodels.stats.multicomp as multi

n=numOfValue

# data for analysis in one df with index 
a=['A']*n
b=['B']*n
c=['C']*n

index=a+b+c+d+e
value=data['A'].to_list()+data['B'].to_list()+data['C'].to_list()

df=pd.DataFrame()
df['index']=index
df['value']=value

mc=multi.MultiComparison(df['value'], df['index'])
results=mc.tukeyhsd()

print(results)

 

근데 이 결과를 dataframe 으로 저장하기 !!

(간단한데 복잡함;)

df_results = pd.DataFrame(data=results._results_table.data[1:], columns=results._results_table.data[0])

 

 

반응형

댓글