通过代码进行OLS回归与MATLAB fitlm相比,我哪里出错了?

时间:2019-01-15 16:09:22

标签: matlab statistics

我有一些代码试图复制MATLAB回归函数,

我似乎无法正确获得tstats。

有人有什么建议吗?

我尝试了几种不同的方法,但不确定是否很明显。

y = [1 2 3 4 5 6 6 7].';
X = [1 1 1 1 1 1 1 1; 4 5 6 3 4 5 6 6].';
X2 = [4 5 6 3 4 5 6 6];
%by hand
beta_hatvec=(inv((X'*X)))*X'*y; 
    %define the residuals
    resid = y-(X*beta_hatvec);
    %estimate of sigma_2
    sigma2_hat=(resid'*resid) / (size(X,1)-size(X,2));
    %estimate of Vhat
    vcov_beta_hat = [sigma2_hat.*((X'*X))];
    stderror_hatvec = sqrt(diag(vcov_beta_hat)); 
        beta_hat=beta_hatvec(2);
        std_error=stderror_hatvec(2);
        t_stat=(beta_hat)./std_error;
 %auto
 lm = fitlm(X2,y,'linear')

0 个答案:

没有答案