多元线性回归分析示例

article/2025/8/28 11:25:59

GLM模型应用于脑功能影像分析时,在某个因素影响下,由beta图,经过t检验得到脑区显著激活的区域。应用于其他地方也可加深我们对于模型的理解。

在这里插入图片描述
在这里插入图片描述

clc,clear;
X=[     136.5          215136.5          250136.5          180138.5          250138.5          180138.5          215138.5          215138.5          215140.5          180140.5          215140.5          250];
y=[       6.27.54.85.14.64.64.94.12.83.14.3 ];
Xnew=[137.5,240];
pp=0.95;
[ab,stats,yy,ylr]=regres2(X,y,Xnew,pp)
table=stats{1}

调用的回归函数如下 ;

function [beta,stats,ynew,ylr]=regres2(X,y,Xnew,pp)
beta=[];stats=[];ynew=[];ylr=[];
[n,p]=size(X);m=p+1;
if n<perror('观察值的数目过少');
end
if  nargin < 2error('多元线性回归要求有两个输入参数');
end 
[n1,collhs] = size(y);
if n ~= n1, error('输入参数y的行数,必须等于输入参数X的行数.'); 
end 
if collhs ~= 1, error('输入参数y应该是一个列向量'); 
end
if nargin==3   if isnumeric(Xnew)[n1,p1]=size(Xnew);if p1~=pdisp('预测自变量的个数不正确');returnendend
end
if (nargin<4)|(~isnumeric(pp))|(pp<=0)|(pp>=1)pp=0;
end
A=[ones(size(y)),X];
[beta,btm1,rtm,rtm1,stat] =regress(y,A);
alpha=[0.05,0.01];
yhat=A*beta;
SSR=(yhat-mean(y))'*(yhat-mean(y));
SSE=(yhat-y)'*(yhat-y);
SST=(y-mean(y))'*(y-mean(y));
Fb=SSR/(m-1)/SSE*(n-m);
Falpha=finv(1-alpha,m-1,n-m);
table=cell(p+4,7);
table(1,:)={'方差来源','偏差平方和','自由度','方差','F比','Fα','显著性'};
table(2+p,1:6)={'回归',SSR,m-1,SSR/(m-1),Fb,min(Falpha)};
table(3+p,1:6)={'剩余',SSE,n-m,SSE/(n-m),[],max(Falpha)};
table(4+p,1:3)={'总和',SST,n-1};
if Fb>max(Falpha)table{2+p,7}='高度显著';
elseif (Fb<=max(Falpha))&(Fb>min(Falpha))table{2+p,7}='显著';
elsetable{2+p,7}='不显著';
end
R2=SSR/SST;R=sqrt(R2);
Sy=sqrt(SSE/(n-m));
mnX=mean(X);
MNX=repmat(mnX,n,1);
Ljj=diag((X-MNX)'*(X-MNX));
Pj=abs(beta(2:end).*sqrt(Ljj/SST));
C=diag(inv(A'*A));bj2=beta.*beta;
SSj=bj2(2:end)./C(2:end);
Fj=SSj/SSE*(n-m);
Falpha=finv(1-[0.05,0.01],1,n-m);
ind2=find(Fj>=Falpha(2));
ind1=find((Fj>=Falpha(1))&(Fj<Falpha(2)));
ind0=find(Fj<Falpha(1));
xxx=zeros(size(Fj));
xxx(ind2)=2;
xxx(ind1)=1;
[tmp,zbx]=min(Fj);
xzh={'不显著','显著','高度显著'};
for kk=1:ptable(kk+1,:)={['x',num2str(kk)],SSj(kk),1,SSj(kk),Fj(kk),[],xzh{1+xxx(kk)}};
end
table{2,6}=Falpha(1);table{3,6}=Falpha(2);
stats={table,R,Sy,Pj};
if (nargin>2)&(isnumeric(Xnew))[n1,p1]=size(Xnew);Xnew=[ones(n1,1),Xnew];ynew=Xnew*beta;Shat2=SSE/(n-m)*(1+Xnew*inv(A'*A)*Xnew');Syhat=sqrt(diag(Shat2));ta=tinv(0.5+pp/2, n-p-1);yl=ynew-ta*Syhat;yr=ynew+ta.*Syhat;ylr=[yl(:),yr(:)];
end

运行结果如图所示:
在这里插入图片描述
结果分析:
在这里插入图片描述
在这里插入图片描述


http://chatgpt.dhexx.cn/article/Gvb03Ele.shtml

相关文章

【课程设计】计算机组成与系统结构

计算机组成与系统结构课程设计(2020.12) 保姆式教程 目录 计算机组成与系统结构课程设计(2020.12)一、本课程设计的性质、目的、任务二、本课程设计的基本理论三、课程设计的主要内容四、微程序流程图&#xff08;树形图&#xff09;五、模型机微指令表六、机器指令程序的说明…

计算机组成与系统结构课程设计

课程设计题目 综合运用所学计算机原理知识&#xff0c;设计并实现具有以下16条指令的指令集结构的模型计算机&#xff1a; 编号 助记符 机器指令码 说明 0 SUB Rd,Rs 0000 RdRs Rd-Rs→Rd 1 ADD Rd,Rs 0001 RdRs RdRs→Rd 2 AND Rd,Rs 0010 RdRs Rd&Rs→Rd &#xff08;Rd和…

计算机毕业设计、计算机课程设计怎么做?计算机设计1900套来帮你!

计算机毕业设计、计算机课程设计怎么做&#xff1f;计算机设计1900套来帮你&#xff01; 人生做什么事都有套路&#xff0c;大学毕业设计、课程设计通常比较简单&#xff0c;大多数都是找个项目做参考&#xff0c;有的人随便抄一抄糊弄一下&#xff0c;只要查重&#xff0c;格…

pycharm 安装numpy包——超简单

非常简单的安装步骤&#xff0c;自己百试不爽哦&#xff0c;废话不多说直接上图按以下步骤进行即可 一、找到安装numpy的地方 file→settings→project interpreter&#xff0c;点击右侧的&#xff0b;号 二、进行numpy 安装 搜索框内手动输入numpy进行搜索&#xff0c;选中…

python 如何安装numpy库?

&#xff08;我的微信&#xff1a;Kingsplusa&#xff0c;我总结了人工智能手推笔记和思维导图&#xff0c;欢迎一起进步学习。&#xff09; 首先我们要找到python安装的位置 winR打开 进入以后输入&#xff1a; where python 找到安装目录后&#xff0c;找到Scripts文件…

python中Numpy包的安装及使用

*****安装 python &#xff08;本文安装 python2.7&#xff09; *****安装 pip (1)检查是否已安装pip 进入cmd命令窗口&#xff0c;输入 pip --version &#xff0c;查看是否已安装pip&#xff0c;说明已安装了pip 否则&#xff0c;说明未安装pip 需要进入&#xff08;2&am…

Python2.7中安装numpy包

前言 花了一个下午的时间才成功安装了numpy&#xff0c;血与泪的教训。记录一下踩的坑。 安装环境 系统&#xff1a; win10 Python版本&#xff1a; 2.7.9 IDE&#xff1a;Pycharm 踩坑过程 尝试一 在Pycharm的setting中安装numpy 1.20.2&#xff08;最新版本&#xff09…

numpy安装过程

下载numpy库的详细方法 安装前提&#xff1a; 1、Python3.8安装完成并能够正常使用 2、下载相应的numpy安装包&#xff0c;.whl格式 安装详细步骤&#xff1a;* 首先&#xff0c;点击下面的链接进入numpy下载官网 链接地址&#xff1a;添加链接描述 进去之后&#xff0c;点击…

pycharm怎么安装numpy库

打开界面后&#xff0c;在File菜单中点击Settings选项 在弹出的窗口中点击project interpreter选项 找到并点击窗口左侧的号键 在搜索框中输入numpy&#xff0c;并点击上方第一个选项 点击底部最下方的install package按钮 当下方出现successfully字样时&#xff0c;就代表num…

numpy的安装以及学习

1.在pycharm解释器中安装numpy库 2.pip install numpy 3.conda install numpy &#xff08;清华源&#xff1a;https://pypi.tuna.tsinghua.edu.cn/simple&#xff09; Numpy的导入&#xff1a; import numpy as np numpy介绍 NumPy是一个开源的Python科学计算库&#xff…

Python安装numpy,matplotlib

NumPy(Numerical Python)是Python语言的一个扩展程序库&#xff0c;支持大量的维度数组与矩阵运算&#xff0c;此外也针对数组运算提供大量的数学函数库。 Matplotlib可能Python 2D-绘图领域使用最广泛的套件。它能让使用者很轻松地将数据图形化&#xff0c;并且提供多样化的输…

python numpy安装

一、python下的numpy安装方法 第一步&#xff1a;安装python&#xff0c;这里不做介绍。 第二步&#xff1a;打开cmd看python是否安装成功。 第三步&#xff1a;输入 python -m pip install -U pip 安装pip文件&#xff0c;pip文件一般在python安装包的script目录下。 第四步&a…

Windows下安装numpy

在看差分隐私的科普时&#xff0c;看到一篇文章&#xff0c;最后有用Laplace分布实现差分隐私的代码&#xff0c;所以就复制到PyCharm里运行了一下&#xff0c;运行时报错“没有numpy”&#xff08;具体怎么说的我也忘了&#xff0c;是import numpy as np这句报错&#xff0c;p…

使用Pycharm安装numpy库

如何在Pycharm中安装numpy库&#xff1f;笔者使用的是PyCharm Community Edition 2020.2.1 第一步 打开Pycharm&#xff0c;在上方找到File&#xff0c;在打开的界面中找到Settings。或者直接使用CtrlAltS快捷键打开settings。 第二步 在左侧以此找到Project&#xff0c;Pytho…

numpy的下载与安装教程(windows系统)

Numpy介绍 NumPy系统是Python的一种开源的数值计算扩展。这种工具可用来存储和处理大型矩阵&#xff0c;比Python自身的嵌套列表&#xff08;nested list structure)结构要高效的多&a…

Numpy的简明安装

1&#xff09;、安装Python3.4版本以上&#xff0c;因为这样会自带pip&#xff08;包管理器的安装&#xff09; 检查Python版本。 打开cmd&#xff0c;输入Python 现在我们可以知道Python的版本与位数&#xff0c;比如我的就是Python3.7&#xff0c;64位。 2&#xff09;…

python安装及numpy的安装

因为对机器学习算法进行实战的话&#xff0c;python语言是必须的&#xff0c;所以前几天进行了安装和配置。说实话&#xff0c;相比较其他的编程语言的IDE来讲&#xff0c;python本身问题不大&#xff0c;但是因为要有很多的矩阵的计算&#xff0c;所以要安装numpy包&#xff0…

Python使用pip安装Numpy模块

环境 python版本&#xff1a;python-3.9.1 操作系统&#xff1a;Windows10 想要安装的模块&#xff1a;numpy 前提 使用pip安装模块&#xff0c;需要保证pip为最新版本。如果使用pip时出现问题提示&#xff1a; You should consider upgrading via the python -m pip …

python安装使用pip安装numpy

相信大家最近都在忙&#xff0c;因为到开学和上班的时候了&#xff0c;我最近也很忙&#xff0c;忙的快要流泪&#xff0c;这不是要考计算机三级了吗&#xff01;买了好厚一本书&#xff0c;备战过程中&#xff0c;最近洗头一次掉了100根不止的头发&#xff0c;有点恐惧&#x…

Python教程:Numpy的安装

一、numpy简介 NumPy是一个功能强大的Python库&#xff0c;主要用于对多维数组执行计算。NumPy这个词来源于两个单词-- Numerical和Python。NumPy提供了大量的库函数和操作&#xff0c;可以帮助程序员轻松地进行数值计算。这类数值计算广泛用于以下任务&#xff1a; 机器学习…