⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 threewayanova.m

📁 这是一个三面阵列的数学工具软件
💻 M
字号:
function threewayanova(Y,n,m,p);

ss=ssq(Y);

% compute grand mean
mm=mean(Y(:));
ssm=n*m*p*mm^2;
% compute residuals after subtraction of grand mean
Y=Y-mm;

% compute main effects
ma=mean(Y')';
Y=permnew(Y,n,m,p);
mb=mean(Y')';
Y=permnew(Y,m,p,n);
mc=mean(Y')';
Y=permnew(Y,p,n,m);
ssa=m*p*ssq(ma);
ssb=n*p*ssq(mb);
ssc=n*m*ssq(mc);
% compute residuals after subtraction of main effects
Y=Y-ma*ones(1,m*p);
Y=permnew(Y,n,m,p)-mb*ones(1,n*p);
Y=permnew(Y,m,p,n)-mc*ones(1,n*m);
Y=permnew(Y,p,n,m);

% compute second order interactions
mbc=mean(Y);
Y=permnew(Y,n,m,p);
mac=mean(Y);
Y=permnew(Y,m,p,n);
mab=mean(Y);
Y=permnew(Y,p,n,m);
ssab=p*ssq(mab);
ssac=m*ssq(mac);
ssbc=n*ssq(mbc);
% compute residuals after subtraction of second order interacions
Y=Y-ones(n,1)*mbc;
Y=permnew(Y,n,m,p);
Y=Y-ones(m,1)*mac;
Y=permnew(Y,m,p,n);
Y=Y-ones(p,1)*mab;
Y=permnew(Y,p,n,m);

ssabc=ssq(Y);
% fprintf(' SS_gm       = %12.6f (%6.2f) \n',ssm,ssm/ss*100);
ss=ss-ssm;
fprintf(' Total ssq after subtraction of grand mean  = %12.6f \n',ss);
disp(' ')
fprintf(' SS_a        = %12.6f (%6.2f) \n',ssa,ssa/ss*100);
fprintf(' SS_b        = %12.6f (%6.2f) \n',ssb,ssb/ss*100);
fprintf(' SS_c        = %12.6f (%6.2f) \n',ssc,ssc/ss*100);
fprintf(' SS_ab       = %12.6f (%6.2f) \n',ssab,ssab/ss*100);
fprintf(' SS_ac       = %12.6f (%6.2f) \n',ssac,ssac/ss*100);
fprintf(' SS_bc       = %12.6f (%6.2f) \n',ssbc,ssbc/ss*100);
fprintf(' SS_abc      = %12.6f (%6.2f) \n',ssabc,ssabc/ss*100);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -