您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 企业财务 > 计量经济学简单线性回归OLS的Matlab程序
计量经济学简单线性回归OLS的Matlab程序wxh10002011-09-21先写OLS.m的M文件,用来代替regress函数;(目前对regress函数不太了解,这里特别感谢潘晓炜同学的提醒)-----------------------------------------------------------------------------------↓function[beta_0beta_1]=OLS(y,x)%OrdinaryLinearRegression%其中x,y为样本构成的向量;%回归方程为Simpleregression:y=beta_0+x*beta_1+u;%y_mean=mean(y);%x_mean=mean(x);%beta_1=((x-x_mean)*(y-y_mean)')/((x-x_mean)*(x-x_mean)');%beta_0=y_mean-beta_1*x_mean;%其中u为服从N(0,sigma^2)随机变量;y_mean=mean(y);x_mean=mean(x);beta_1=((x-x_mean)*(y-y_mean)')/((x-x_mean)*(x-x_mean)');beta_0=y_mean-beta_1*x_mean;-----------------------------------------------------------------------------------↑然后写OLS_test.m的M文件,用来进行模拟;-----------------------------------------------------------------------------------↓function[b_0b_1]=OLS_test(beta_0,beta_1,n,a,b,sigma)%已知beta_0,beta_1,由OLS回归得b_0,b_1.两者进行比较得到估计效果;%y=beta_0+beta_1*x+u来得到;%x为随机向量,u为服从N(0,sigma^2)随机变量;%n为模拟数据量,比如1,10,100,1000等;%x=a+b*rand(1,n);%产生(a,a+b)区间上的随机向量;%mu=;sigma=;%随机矩阵服从均值为mu,方差为sigma的正态分布%M=;N=%M,N为产生[M,N]的随机矩阵%x=mu+sqrt(sigma)*randn(M,N);%x为新生成的矩阵[M,N],服从均值为mu,方差为sigma的正态分布;x=a+b*rand(1,n);%产生(a,a+b)区间上的随机向量;%随机矩阵服从均值为0,方差为sigma的正态分布u=sqrt(sigma)*randn(1,n);y=beta_0+beta_1*x+u;%用OLS函数进行回归即可:[beta_0beta_1]=OLS(y,x);[b_0b_1]=OLS(y,x);sprintf('已知参数\n\tbeta_0=%0.5g\n\tbeta_1=%0.5g\n模拟后,OLS估计值为\n\tbeta_0=%0.5g\n\tbeta_1=%0.5g',beta_0,beta_1,b_0,b_1)-----------------------------------------------------------------------------------↑运行结果如下:-----------------------------------------------------------------------------------↓[b_0b_1]=OLS_test(20,0.7,2,1,99,1)ans=已知参数beta_0=20beta_1=0.7模拟后,OLS估计值为beta_0=19.394beta_1=0.72626[b_0b_1]=OLS_test(20,0.7,100,1,99,1)ans=已知参数beta_0=20beta_1=0.7模拟后,OLS估计值为beta_0=19.894beta_1=0.70479[b_0b_1]=OLS_test(20,0.7,10000,1,99,1)ans=已知参数beta_0=20beta_1=0.7模拟后,OLS估计值为beta_0=19.988beta_1=0.70018
本文标题:计量经济学简单线性回归OLS的Matlab程序
链接地址:https://www.777doc.com/doc-2173182 .html