第二章2.如何读取cell类型和struct类型数据中的值?答:cell型数据仍类似于矩阵,只不过矩阵中的每个元素可以是不同类型的数据。而struct型数据由多个子域(field)构成一个结构体。cell型数据的读取通过大括号{}和元素位置来读取,如A{1,1};而struct型数据的读取通过点符.结合域名来读取,如student.score。4.在本章中没有介绍矩阵计算的相关内容,请在MATLAB的帮助中查找相关的函数,来对矩阵A进行如下的计算。17241815235714164613202210121921311182529A求A的逆矩阵1A、特征根和特征向量、A的行列式、A的秩和A的迹,并判断A的对角线上元素和是否等于A的迹。答:求A的逆矩阵1A:A_inv=inv(A)求A的特征根和特征向量:[eigVeigR]=eig(A)注:eigV是特征向量,eigR的对角元素是特征根。求A的行列式:A_det=det(A)求A的秩:A_rank=rank(A)求A的迹:A_trace=trace(A)A的对角线上元素和:A_diagsum=sum(diag(A))注:应等于A的迹5.利用MATLAB的帮助,完成对矩阵A的下列操作。11111222223333344444A(1)将矩阵A转换为10×2的矩阵。答:B=reshape(A,10,2)(2)将矩阵A上下翻转后形成新的矩阵B。答:B=flipud(A)8生物医学数据分析及其MATLAB应用(3)将矩阵A左右翻转。答:B=fliplr(A)(4)提取A的主对角线上的元素。答:V=diag(A)(5)将A的第2行至第3行和第2列至第5列构成的子矩阵赋值为-1。答:A(2:3,2:5)=-1(6)将A的第2行至第3行部分作为元素复制为5×2的矩阵C,C的维数是多少?答:C=repmat(A(2:3,:),5,2),size(C)C的维数为10×10。6.请分别绘制xy和sin()xy的三维图和等高线。x=-5:0.5:5;[xx,yy]=meshgrid(x);Z1=xx.*yy;Z2=sin(Z1);figure,surfc(xx,yy,Z1),title(‘xywithcontour’);figure,surfc(xx,yy,Z2),title(‘sin(xy)withcontour’);figure,contour(xx,yy,Z2),title(‘contourofsin(xy)’);-505-505-30-20-100102030xywithcontour-5-4-3-2-1012345-505-1-0.500.51sin(xy)withcontourcontourofsin(xy)-5-4-3-2-1012345-5-4-3-2-10123457.下面给出一个迭代模型。21111.40.3kkkkkxyxyx写出求解该模型的M-函数。如果迭代初始值为0000xy,,计算k=0∶1∶300的迭代过程,分别绘制x的变化曲线和y的变化曲线,并在二维平面上绘制点(x,y)的运行轨迹。答:%%%assignment2-7clear;closeall;clc;x(1)=0;y(1)=0;9第2章MATLAB应用基础fork=1:300x(k+1)=1+y(k)-1.4*x(k)^2;y(k+1)=0.3*x(k);endfigure,plot([1:length(x)],x),title('xwithk')figure,plot([1:length(y)],y),title('ywithk')figure,plot(x,y,'o-.'),title('trajectory')050100150200250300350-1.5-1-0.500.511.5xwithk050100150200250300350-0.4-0.3-0.2-0.100.10.20.30.4ywithk-1.5-1-0.500.511.5-0.4-0.3-0.2-0.100.10.20.30.4trajectory第三章1.画出医学上常用的正态分布曲线,并确定其极值点。22()21()e,(0)2πxμσfxμσσσ,其中为常数%%%assign31.mclear;closeall;mu=0;sigma=1;x=-5:0.1:5;y=1./(sqrt(2*pi)*sigma)*exp(-(x-mu).^2/(2*sigma^2));%%%y=normpdf(x,mu,sigma);%%%也可直接调用正态分布函数计算figure,plot(x,y)title('正态分布曲线')j=find(y==max(y));10生物医学数据分析及其MATLAB应用xamx1=x(j)%%x极大值点ymax=y(j)%%极大值%%%方法2figure,fplot(@(x)1/(sqrt(2*pi)*sigma)*exp(-(x-mu)^2/(2*sigma^2)),[-5,5],'r-')title('正态分布曲线')[xmax2,ymaxval]=fminbnd(@(x)(-1)/(sqrt(2*pi)*sigma)*exp(-(x-mu)^2/(2*sigma^2)),-5,5);%%乘以-1变为求极小值ymax2=-ymaxval;%%极大值xmax2ymax22.某年级甲班、乙班各有男生50人。从两个班中各抽取10人测量身高,并求其平均身高。如果甲班的平均身高大于乙班,能否推论甲班所有同学的平均身高大于乙班?为什么?答:不能。从甲、乙两班分别抽取10人其身高分别是甲、乙两班的一个样本。该平均身高只是甲、乙两班所有同学平均身高的一个点估计值。既使是按随机化原则进行抽样,由于存在抽样误差,样本均数与总体均数一般很难恰好相等。因此,不能仅凭两个样本均数高低就作出两总体均数熟高熟低的判断,而应通过统计分析,进行统计推断,才能作出判断。3.利用函数randn(1000,1)产生样本,试计算其均值、方差、中值、最大值和最小值。为什么它的均值并不为零呢?答:randn(‘seed’,5);%%为重复检验,种子数选5x=randn(1000,1);%%生成标准正态分布的一个样本,样本容量为1000xmean=mean(x)%%均值xvar=var(x)%%方差xmen=median(x)%%中值xmax=max(x)%%最大值xmin=min(x)%%最小值由样本计算得到的均值为0.046,这说明由样本得到的统计量只是对总体的一种估计,一般很难恰好相等。4.假定5岁男童的体重服从正态分布,平均体重m=19.5(kg),标准差s=2.3(kg)。随机抽查一5岁男童的体重,计算概率如下。(1)其体重小于16.1kg;(2)其体重大于22.9kg;(3)其体重在14.6kg到23.9kg之间。11第2章MATLAB应用基础答:(1)22)(1.1621)1.16(smxesxP≈0.0697对应matlab命令为:normcdf(16.1,19.5,2.3)(2)22)(9.22211)9.22(1)9.22(smxesxPxP≈0.0697对应matlab命令为:1-normcdf(22.9,19.5,2.3)(3)22)(9.236.1421)6.14()9.23()9.236.14(smxesxPxPxP≈0.9556对应matlab命令为:normcdf(23.9,19.5,2.3)-normcdf(14.6,19.5,2.3)5.简述可信区间在假设检验问题中的作用。答:可信区间可以回答差别是否有统计学意义。可信区间需在预先规定的概率即检验水准a的前提下进行计算。6.利用MATLAB,产生符合下列分布的数据样本X,样本大小为(1000,1)。(1)~(10,5)XN;(2)~(1,5)XR(均匀分布);(3)~E(3)X(指数分布)。答:(1)x=normrnd(10,sqrt(5),1000,1);(2)x=unifrnd(1,5,1000,1);(3)x=exprnd(3,1000,1);7.有10例健康人和10例克山病人的血磷测定值(mg%)见表3-11,问克山病人的血磷是否高于健康人?表3-11健康人与克山病人的血磷测定值(mg%)健康人170155140115235125130145105145患者1501251501409012010010090125答:此题为两组独立样本的t检验,参见例3.17,需首先判断是否符合应用条件,最终假设检验结果为不能拒绝H0,即不能认为两类人的均值有显著差异,因此不能说明克山病人的血磷高于健康人。8.某单位研究代乳粉营养价值时,用大白鼠作实验,得到大白鼠进食量和增加体重的数据见表3-12。12生物医学数据分析及其MATLAB应用表3-12八只大白鼠的进食量和体重增加量进食量/g800780720867690787934750增量/g185158130180134167186133(1)此资料有无可疑的异常点?(2)求直线回归方程并对回归系数作假设检验。(3)试估计进食量为900g时,大白鼠的体重平均增加多少,计算其95%的可信区间,并说明其含义。(4)求进食量为900g时,个体Y值的95%置信区间,并解释其意义。答:由原始数据的散点图可看出样本资料有直线趋势,如下图。6006507007508008509009501000100110120130140150160170180190200进食量x增量y(1)回归系数假设检验:H0:β=0,即进食量与增重之间无直线关系H1:β≠0,即进食量与增重之间有直线关系利用regress函数,得到b=[-47.353,0.261],其置信区间分别为[-173.627,78.921]和[0.102,0.42],对应的P值为0.0070.05,说明拒绝H0,回归模型成立。观查残差分布,可发现有不包含零点的异常点存在(第1号点,(800,185)),为提高回归模型的准确性,应将此异常点剔除后重新估计回归参数。13第2章MATLAB应用基础12345678-40-30-20-10010203040ResidualCaseOrderPlotResidualsCaseNumber(2)删除异常点后重新进行回归分析并进行残差分析,可以看到残差分布无异常点。对应的P值为0.00270.05,说明拒绝H0,回归模型成立。回归方程为:y=-46.298+0.255x,回归系数的95%置信区间分别为:[-140.78,48.18]]和[0.136,0.375]。回归曲线结果如图:650700750800850900950100120140160180200220240进食量x增量yx-y散点图及其拟合直线14生物医学数据分析及其MATLAB应用(3)当进食量为900g时,大白鼠的体重平均增加183.6g,其95%的可信区间为[170.935,196.265],表示当进食量为900g时,,相应的平均增重服从一个正态分布,由样本得到的均值估计值为183.6g,如果从此正态分布中重复抽样100次,这100个可信区间中理论上将有95个区间包含真正的总体均数。(4)当进食量为900g时,个体Y值的95%置信区间为[154.048,213.153],表示在估计总体中,进食量为900g时,有95%的大白鼠增加体重在154.048~213.153g范围内。详细程序代码见assign38.m9.观测细菌繁殖过程,已知不同时刻细菌数目如下,试用Logistic曲线对其进行拟合:t=[1,2,3,4,5,6,7,8]Pop=[5.19,5.30,5.60,5.82,6.00,6.06,6.45,6.95]注:Logistic曲线的一