在脚本中运行scipy的oneway anova

sur*_*chs 7 python scipy anova

我有个问题.我想在脚本中运行scipy.stats f_oneway()ANOVA,该脚本加载包含numpy数组的数据存档,如下所示:

archive{'group1': array([ 1, 2, 3, ..., ]),
        'group2': array([ 9, 8, 7, ..., ]),
        ...}
Run Code Online (Sandbox Code Playgroud)

现在我的问题是不同数据档案的组数不固定.换句话说,我事先并不知道档案中有多少组(也不一定是他们的名字).

单向ANOVAscipy实现只接受逗号分隔的数组作为输入,如下所示:

a = array([ 1, 2, 3, ..., ])
b = array([ 9, 8, 7, ..., ])
c = array([ 5, 6, 4, ..., ])

scipy.stats.f_oneway(a, b, c)
Run Code Online (Sandbox Code Playgroud)

我试图给它列表,元组,多维数组都没有成功.所以目前,我可以使用这种ANOVA实现的唯一方法是每次手动输入组变量,这实际上使得无法在脚本中运行它.我想知道你们其中一个人是否知道如何解决这个问题或如何避免f_oneway()的这些非常具体的数据格式要求.

Mic*_*ael 15

我想你应该试试:

scipy.stats.f_oneway(*archive.values())
Run Code Online (Sandbox Code Playgroud)