单因素、双因素方差分析、误差处理

来源:互联网 发布:大数据bi工具 编辑:程序博客网 时间:2024/03/28 23:26
clc,clear all;close all;%%% %回归分析% %利用regress函数进行一元线性回归分析% x=[1617 1540 1700 1425 1574 1902 1687 1499 1567 1688];% y=[423 365 509 290 387 421 479 307 392 459];% x=[ones(size(x,2),1),x'];% [b,int,rint,stats]=regress(y',x)%一元线性回归分析%%% %回归预测% %y=a+bx1+cx2+dx3% x=[76.3 30.6 21.1 1090.5;78.2 31.7 20.4 1123; 80.7 28.8 22.8 1189.7;%     77 31.6  20.9 1003.2;79.8 26.7 23.7 1287.1;82.1 23.5 21.5 1023;%     98.7 26.7 21.3 1191;66.4 26.8 21 1075.4;75 23.6 22.8 1231;%     149 50.22 22.4 2317;112.5 46.3 23.1 2031.2;126.7  62.5 28.6 2169.4];% subplot(2,2,1);% plot(x(:,1),x(:,4),'r+');% title('销售额与看库存资金额关系');% % subplot(2,2,2);% plot(x(:,2),x(:,4),'go');% title('销售额与广告投入关系');% % subplot(2,1,2);% plot(x(:,3),x(:,4),'go');% title('销售额与员工薪酬关系');% % %作多元回归% x=[ones(12,1) x(:,1:3)];% [b,bint,r,rint,stats]=regress(x(:,4),x);% b, bint,stats,% % %预测% x1=[1 145 44 26];% y1=x1*b%%% % regstats作多重线性回归% x=[76.3 30.6 21.1 1090.5;78.2 31.7 20.4 1123; 80.7 28.8 22.8 1189.7;%     77 31.6  20.9 1003.2;79.8 26.7 23.7 1287.1;82.1 23.5 21.5 1023;%     98.7 26.7 21.3 1191;66.4 26.8 21 1075.4;75 23.6 22.8 1231;%     149 50.22 22.4 2317;112.5 46.3 23.1 2031.2;126.7  62.5 28.6 2169.4];% x1=x(:,1:3)% y1=x(:,4);% s=regstats(y1,x1)%回归诊断% s.beta  %求回归参数,含常数项%%% % robustfit函数采用加权最下二乘法估计线性回归参数,所建模型受异常数据点的影响较小% %利用robustfit函数对线性模型y=10-2*x进行多重稳健回归分析% x=(1:10)';% y=10-2*x+randn(10,1);% y(10)=0;% %同时使用普通最小二乘和稳健回归估计直线拟合% [bls,stats1]=regress(y,[ones(10,1) x]);% [brob,stats2]=robustfit(x,y);% %绘制散点图% scatter(x,y,'filled');% grid on;% hold on;% plot(x,bls(1)+bls(2)*x,'r','LineWidth',2);% plot(x,brob(1)+brob(2)*x,'y','LineWidth',2);% legend('原始数据','普通最小二乘','稳健回归');%%% %单因素方差分析% % 调用anoval函数对数据进行单因素方差分析% x=[62 75 62 79 80;67 85 69 64 70;45 79 55 69 79;52 76 65 70 76];% group={'方案1','方案2','方案3','方案4','方案5',};% [p,a,s]=anova1(x,group)%单因素方差分析%%% %双因素方差分析% x=[30 36 35.5 38.5 ;33.5 36.5 38 39.5;36 37.5 39.5 43];% [p,s,state]=anova2(x) %双因素方差分析%%%异常数据处理c=[nan;ones(100,1);inf;100]; %含有nan,inf,以及一个不正常的大数100mean(c),trimmean(c,5)  %trimmean忽略上下各2.5%的值c=trim(c) %坏数据已被清除
原创粉丝点击