MATLAB学习实例

一、最小二乘法

x=1896:4:2009

//指的是x从1896开始,每一个新的x加4知道大于2008,即x=[1896,1900,1904,...,2008]
y=[12.00,11.00,11,11.2,10.8,10.8....]
p=polyfit(x,y,1);

//拟合函数y(x)(1次函数,如果第三个变量是n,就是n次函数)
x1=1896:4:2016
y1=polyval(p,x1)

//计算x1对应的y1,这里的p是一个数组
polt(x,y,'b*',x1,y1,'b-');

//画出函数,(x,y)用‘*’标记,(x1,y1)用实线连起来

二、最大似然法(就是做一个最佳的正太分布)

data=[83,75,...58];
//输入数据
[mu,sigma]=normfit(data);

//拟合出最佳的正态分布的μ和σ;相似的其他函数可以参考

http://conanswp.blog.163.com/blog/static/4100770520122143240836/
[y,x]=hist(data,35);
bar(x,y,'FaceColor','r','EdgeColor','w');box off
xlim([mu-3*sigma,mu+3*sigma])
a2=axes;
ezplot(@(x)normpdf(x,mu,sigma),[mu-3*sigma,mu+3*sigma])
set(a2,'box','off','yaxislocation','right','color','none')
title '频数直方图与正态分布密度函数(拟合)'

你可能感兴趣的:(MATLAB学习实例)