下面是使用Python中的statsmodels库进行ANOVA和Tukey-HSD分析的示例代码:
import pandas as pd
import statsmodels.api as sm
from statsmodels.formula.api import ols
from statsmodels.stats.multicomp import pairwise_tukeyhsd
# 创建示例数据
data = {'Group': ['A', 'A', 'B', 'B', 'B', 'C', 'C', 'C', 'C'],
'Value': [10, 12, 8, 9, 11, 15, 13, 14, 16]}
df = pd.DataFrame(data)
# 进行单因素方差分析(ANOVA)
model = ols('Value ~ Group', data=df).fit()
anova_table = sm.stats.anova_lm(model)
print('ANOVA结果:')
print(anova_table)
# 进行Tukey-HSD多重比较
posthoc = pairwise_tukeyhsd(df['Value'], df['Group'])
print('Tukey-HSD多重比较结果:')
print(posthoc)
这个示例中,我们创建了一个包含三个组别(A、B和C)的数据框,每个组别有不同的数值。然后,我们使用ols
函数拟合一个线性模型,并使用anova_lm
函数计算ANOVA结果。最后,我们使用pairwise_tukeyhsd
函数进行Tukey-HSD多重比较。
注意:在运行代码之前,需要确保已安装好pandas
和statsmodels
库。