scipy 使用statannotations我如何传入stats_params来修改统计测试?

uz75evzq  于 2022-11-10  发布在  其他
关注(0)|答案(1)|浏览(232)

我正在尝试执行单尾学生t-test_ind,需要修改stats_params,但无法执行此操作。
下面是我使用的代码:

plotting_parameters = {
    'data':        df1, 
    'x':           R, 
    'y':           TMD, 
    'hue':         None, #R, 
    'hue_order':   None, #[Eq, Po], 
    'order':       [Eq, Po], 
    'ci':          'sd', 
    'errcolor':    'black', 
    'capsize':     0.2, 
}

annotator_parameters = {
    'loc':                  'outside', 
    'test':                 't-test_ind', 
    'text_format':          'star', 
    'line_offset':          0.0, 
    'line_height':          0.015, 
    'stats_params':         {'alternative': 'greater'}
}

pairs                 = [((Eq, Po))]

# Barplot

f, ax = plt.subplots()
ax = sns.barplot(**plotting_parameters)

annotator = Annotator(ax, pairs,**plotting_parameters)

annotator.configure(**annotator_parameters)
annotator.apply_and_annotate()

ax.set_xlabel(xlabel)
ax.set_ylabel(ylabel)
ax = sns.despine() # takes the lines off on the right and top of the graph

在字典annotator_parameters中,变量stats_params似乎没有传递给scipy.stats
我做错了什么吗?
当我使用statannot时,我会传递变量,并能够让它工作。
提前感谢!

e7arh2l6

e7arh2l61#

你需要为apply_test方法提供stats_params,而不是configure方法。不幸的是,apply_and_annotate方法不带参数,所以你必须分别调用apply_testannotate

annotator.apply_test(alternative='greater')
annotator.annotate()

相关问题