單因子方差分析是比較倆組或多組數據的均值,它返回原假設——均值相等的概率,在matlab中我們可以用函數
anova1進行單因子方差分析。
函數anova1
格式: p=anova1(X) %X的各列為彼此獨立的樣本觀察值,其元素個數相同,p為各列均值相等的概率值,若p值
接近於0,則原假設受到質疑,說明至少有一列均值與其余列均值有明顯的不同
p=anova1(X,group) %X和group為向量且group要與X對應;
[p,table]=anova1(X,group,'displayopt') %displayopt=on/off表示顯示與隱藏方差分析表圖和盒圖
[p,table,stats]=anova1(...) %stats為分析結果的構造;
注:anova1函數產生倆個圖:標准的方差分析表圖和盒圖。
Score=[75 62 71 58 73;81 85 68 92 90;73 79 60 75 81]';
P=anova1(Score)
由於p值小於0.05.拒絕零假設,認為3中教學方法存在顯著差異。
X=[0.236 0.238 0.248 0.245 0.243;0.257 0.253 0.255 0.254 0.261;0.258 0.264 0.259 0.267 0.262]';
p=anova1(X)
p=1.3431e-05<0.05;
由於p值小於0.05,拒絕零假設,認為3台機器所生產的薄板的厚度存在顯著差異。
strength=[82 86 79 83 84 85 86 87 74 82 78 75 76 77 79 79 77 78 82 79]';
alloy= {'st','st','st','st','st','st','st','st','all','all','all','all','all','all','al2','al2','al2','al2','al2','al2'};
[p,table,stats]=anova1(strength,alloy,'on')
p =
1.5264e-04
table =
'Source' 'SS' 'df' 'MS' 'F' 'Prob>F'
'Groups' [184.8000] [ 2] [92.4000] [15.4000] [1.5264e-04]
'Error' [102.0000] [17] [ 6.0000] [] []
'Total' [286.8000] [19] [] [] []
stats =
gnames: {3x1 cell}
n: [8 6 6]
source: 'anova1'
means: [84 77 79]
df: 17
s: 2.4495
A=[31.9 27.9 31.8 28.4 35.9;24.8 25.7 26.8 27.9 26.2; 22.1 23.6 27.3 24.9 25.8;27.0 30.8 29.0 24.5 28.5]';
p=anova1(A)
綜述:參數意義
第一列:source X中數據可變性的來源
第二列:SS 用於每一列的平方和
第三列:df 與每一種可變性來源有關的自由度
第四列:MS SS/df的值
第五列:F 統計量數值,它是MS的比率
第六列:從F累積分布中得到的概率,當F增加時,p值減小。