MATLAB在数据统计中的应用.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MATLAB在数据统计中的应用 ______________________________________________ 目录: 1、一元线性回归的matlab实现(含检验)【更新】 2、一维数据滑动平均的matlab实现 3、多元线性回归的matlab实现 4、K阶自回归拟合及二阶自回归预测的Matlab实现 5、一次指数平滑预测的matlab实现 6、n次指数平滑及其预测 7、一维数据移动平滑的matlab实现 8、K阶自相关系数的matlab实现(含置信度检验) 说明: 1.正文中命令部分可以直接在Matlab中运行,作者(Yangfd09)在MATLAB R2009a(7.8.0.347)中运行通过。 2.限于作者水平问题,文中难免疏漏和错误,如蒙赐教,不胜感激! 3.原创作品,仅供学习交流之用,会有不定期更新。 一元线性回归的matlab实现(含检验)【更新】 %求一元线性回归方程 %数据要求:两行。第一行存放x的观察值,第二行存放y的观察值 %数据文件名:data_yyhg.mat;变量名:test %load data_yyhg.mat N=length(test(1,:)); %注:也可以用[M,N]=size(test) % 但不能用N=size(test(1,:)) sx=0;sx2=0;sy=0;sy2=0;sxy=0;Lxy=0;Lyy=0; for i=1:N sx=sx+test(1,i); sx2=sx2+test(1,i)^2; sy=sy+test(2,i); sy2=sy2+test(2,i)^2; sxy=sxy+test(1,i)*test(2,i); Lxy=Lxy+(test(1,i)-sum(test(1,:))/N)*(test(2,i)-sum(test(2,:)/N)); Lyy=Lyy+(test(2,i)-sum(test(2,:))/N)^2; end r=[N,sx;sx,sx2]\[sy;sxy]; a=r(1);b=r(2); %F分布检验 U=b*Lxy; Q=Lyy-U; F=(N-2)*U/Q; %拟合优度检验 x=test(1,:);y=a+b*x;eq=sum(test(2,:))/N; ssd=0;ssr=0; for i=1:N ssd=ssd+(test(2,i)-y(i))^2; ssr=ssr+(y(i)-eq)^2; end sst=ssd+ssr; RR=ssr/sst; %命令窗口中显示回归方程 str=[blanks(5),y=,(,num2str(a),),+,(,num2str(b),),*x]; disp( ) disp(回归方程为:) disp(str) disp(R^2拟合优度检验:) strin=[R^2=,num2str(RR)]; disp(strin) disp(F-分布显著性检验:) stri=[F计算值:,num2str(F),blanks(4),自由度:f1=1,f2=,num2str(N-2)]; disp(stri) disp(注:请对照F-分布表找到所需置信水平下的F临界值Fa,若FFa,则通过检验。) %绘制x-y散点图和回归直线 yy=a+b*test(1,:); plot(test(1,:),test(2,:),r.),hold on plot(test(1,:),yy,b-),hold off title(str) 附(可以直接粘贴到.mat文件中): 3.8 4 5.8 8 11.3 14.4 16.5 16.2 13.8 10.8 6.7 4.7 77.7 51.2 60.1 54.1 55.4 56.8 45 55.3 67.5 73.3 76.6 79.6 一维数据滑动平均的matlab实现 %滑动平均 %数据格式:单行(按时间序列排序) %数据文件名:data_ph.mat,变量名:test load data_ph.mat M=length(test); disp(请输入单侧平滑点数(时距)) k=input((输入1对应于三点平滑,2对应五点平滑):); y=zeros(1,M); if 2*k+1=M for i=1:M-2*k for j=i:i+2*k y(i+k)=y(i+k)+test(j); end y(i+k)=y(i+k)/(2*k+1); end y([1:k,M-k+1:M])=NaN; str=[i

文档评论(0)

lyxbb + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档