可以使用的anoval像往常一样,但你需要将你的数据,并告诉MATLAB它们分组,它应该工作:
clc
clear
x1 = [3;2;6;5];
x2 = [4;1;3;6;9];
x3 = [2;6;1];
data = [x1' x2' x3']; %// Create row vector with your data
group = {'G1','G1','G1','G1','G2','G2','G2','G2','G2','G3','G3','G3'}; %// set the groups according to the data above
[p1] = anova1(data, group,'off') %// Use the 'off' option to prevent the table/box plot from showing up.
p1 =
0.7119
编辑: MHH周围上场后的样子,如果你用NaN填充矢量,使它们的长度相同;由此我的意思是它给出了相同的p值,并且箱形图看起来相同。我不知道这是否是有效的,但这样我会用第一种方法去:)
代码:
z1 = [3;2;6;5;NaN];
z2 = [4;1;3;6;9];
z3 = [2;6;1;NaN;NaN];
Z = [z1 z2 z3]
[p2] = anova1(Z)
伯努瓦谢谢!我使用分组来解决它,但我喜欢NaN方法。对于较大的数据集可能会更快。此外,repmat功能可用于设置组。 – jsnelgro 2014-10-27 23:47:50
大那么高兴你理解了它!你是对的NaN方法可以证明对于大型数据集非常有用:) – 2014-10-28 00:00:25