data=csvread('E:\机器学习\Advertising.csv',1,1);
X=data(:,1:3);
Y=data(:,4);
n=size(Y,1);
X1=[ones(n,1) X];
beta_hat=inv(X1'*X1)*X1'*Y;
%% 单个分析
figure;
for l=1:3
x=[ones(n,1) X(:,l)];
beta_hata_n=inv(x'*x)*x'*Y;
y_n=x*beta_hata_n;
%%%计算残差标准误RSE即方差的无偏估计量
RSS=sum((Y-y_n)'*(Y-y_n));
RSE=sqrt(RSS/(n-2));
SE=RSE/sum((X(:,l)-mean(X(:,l)))'*(X(:,l)-mean(X(:,l))));
t=beta_hata_n(2)/SE;
p=1-tcdf(t,n-2);
subplot(1,3,l);
plot(X(:,l),y_n,'r',X(:,l),Y,'ob');
end
%% 多元分析
XX=inv(X1'*X1);
Y_hat=X1*beta_hat;
RSS=sum((Y-Y_hat)'*(Y-Y_hat));
RSE=sqrt(RSS/(n-4));
for l=1:4
t_l=beta_hat(l)/(RSE*sqrt(XX(l,l)));
p_l=1-tcdf(t_l,n-4)
end
%%%相关系数矩阵
corr=corrcoef(data);
%%% F统计量及其p值
X=data(:,1:3);
Y=data(:,4);
n=size(Y,1);
X1=[ones(n,1) X];
beta_hat=inv(X1'*X1)*X1'*Y;
%% 单个分析
figure;
for l=1:3
x=[ones(n,1) X(:,l)];
beta_hata_n=inv(x'*x)*x'*Y;
y_n=x*beta_hata_n;
%%%计算残差标准误RSE即方差的无偏估计量
RSS=sum((Y-y_n)'*(Y-y_n));
RSE=sqrt(RSS/(n-2));
SE=RSE/sum((X(:,l)-mean(X(:,l)))'*(X(:,l)-mean(X(:,l))));
t=beta_hata_n(2)/SE;
p=1-tcdf(t,n-2);
subplot(1,3,l);
plot(X(:,l),y_n,'r',X(:,l),Y,'ob');
end
%% 多元分析
XX=inv(X1'*X1);
Y_hat=X1*beta_hat;
RSS=sum((Y-Y_hat)'*(Y-Y_hat));
RSE=sqrt(RSS/(n-4));
for l=1:4
t_l=beta_hat(l)/(RSE*sqrt(XX(l,l)));
p_l=1-tcdf(t_l,n-4)
end
%%%相关系数矩阵
corr=corrcoef(data);
%%% F统计量及其p值