matlab在统计分析中的应用

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

Matlab在统计分析中的应用MATLAB概述与运算基础MATLAB语言:广泛应用于工程计算及数值分析领域的新型高级语言1984年由美国MathWorks公司推向市场已成为国际公认的最优秀的工程应用开发环境功能强大、简单易学、编程效率高在欧美各高等院校,MATLAB已成为线性代数、自动控制理论、数字信号处理、时间序列分析、动态系统仿真、图像处理等课程的基本教学工具,成为大学生、硕士生以及博士生必须掌握的基本技能。MATLAB:MATrixLABorotory一.MATLAB特点:一.MATLAB特点:1.数值计算和符号计算功能数值计算功能包括:矩阵运算、多项式和有理分式运算、数据统计分析、数值积分、优化处理等。符号计算将得到问题的解析解。2.MATLAB语言除了命令行的交互式操作以外,还可以程序方式工作。使用MATLAB很容易地实现C或FORTRAN语言的几乎全部功能。3.图形功能两个层次的图形命令:一种是对图形句柄进行的低级图形命令,另一种是建立在低级图形命令之上的高级图形命令。利用MATLAB的高级图形命令可以轻而易举地绘制二维、三维乃至四维图形,并可进行图形和坐标的标识、视角和光照设计、色彩精细控制等等。4.应用工具箱包括:基本部分和各种可选的工具箱。基本部分中有数百个内部函数。工具箱分为两大类:功能性工具箱和学科性工具箱。a.功能性工具箱:主要用来扩充符号计算功能、可视建模仿真功能及文字处理功能等。b.学科性工具箱:专业性较强,如控制系统工具箱、信号处理工具箱、神经网络工具箱、最优化工具箱、金融工具箱等,用户可以直接利用这些工具箱进行相关领域的科学研究。命令窗口的命令编辑区用于输入命令和显示计算结果。例:键入A=[123;456;789]输出A=123456789二.MATLAB集成环境矩阵运算【例】求解线性方程组AX=B11.529703.60.5-44其中A=710-32233378.521638090-203-4B=20516在MATLAB命令窗口输入命令:a=[1,1.5,2,9,7;0,3.6,0.5,-4,4;7,10,-3,22,33;3,7,8.5,21,6;3,8,0,90,-20];b=[3;-4;20;5;16];x=a\b得到的结果是:x=3.5653-0.9255-0.26950.14350.0101【例】求方程x^4+7x^3+9x-20=0的全部根。命令窗口输入:p=[1,7,0,9,-20];%建立多项式系数向量x=roots(p)%求根得到的结果是:x=-7.2254-0.4286+1.5405i-0.4286-1.5405i1.0826二维图形一、plot函数函数格式:plot(x,y)其中x和y为坐标向量函数功能:以向量x、y为轴,绘制曲线。【例】在区间0≤X≤2内,绘制正弦曲线Y=SIN(X)x=0:pi/100:2*pi;y=sin(x);plot(x,y)【例】同时绘制正、余弦两条曲线Y1=SIN(X)和Y2=COS(X)x=0:pi/100:2*pi;y1=sin(x);y2=cos(x);plot(x,y1,x,y2)(一)线型与颜色格式:plot(x,y1,’cs’,...)其中c表示颜色,s表示线型一、plot函数【例】用不同线型和颜色重新绘制上例图形x=0:pi/100:2*pi;y1=sin(x);y2=cos(x);plot(x,y1,'go',x,y2,'b-.')其中:参数‘go’和‘b-.’表示图形的颜色和线型。g:绿色o:线型为圆圈b:蓝色-.:表示图形线型为点划线(二)图形标记title(‘加图形标题');xlabel('加X轴标记');ylabel('加Y轴标记');text(X,Y,'添加文本');一、plot函数三维图形一、plot3函数函数格式:plot3(x1,y1,z1,c1,x2,y2,z2,c2,…)其中x1,y1,z1…表示三维坐标向量;c1,c2…表示线形或颜色。函数功能:以向量x,y,z为坐标,绘制三维曲线。【例】绘制三维螺旋曲线t=0:pi/50:10*pi;x=sin(t),y=cos(t);plot3(x,y,t);title('helix'),text(0,0,0,'origin');xlabel('sin(t)'),ylabel('cos(t)'),zlabel('t');grid;二、mesh函数绘制三维网格图。函数格式:mesh(x,y,z,c)其中:x,y控制X和Y轴坐标矩阵z是由(x,y)求得Z轴坐标(x,y,z)组成三维空间的网格点c用于控制网格点颜色【例】绘制三维网格曲面图x=[0:0.15:2*pi];y=[0:0.15:2*pi];z=sin(y')*cos(x);%矩阵相乘mesh(x,y,z);【例】画出由函数形成的立体网状图:x=linspace(-2,2,25);%在x轴上取25点y=linspace(-2,2,25);%在y轴上取25点[xx,yy]=meshgrid(x,y);%xx和yy都是21x21的矩阵zz=xx.*exp(-xx.^2-yy.^2);%计算函数值,zz也是21x21的矩阵mesh(xx,yy,zz);%画出立体网状图三、surf函数绘制三维曲面图,各线条之间的补面用颜色填充。surf函数和mesh函数的调用格式一致。函数格式:surf(x,y,z)其中x,y控制X和Y轴坐标,矩阵z是由x,y求得的曲面上Z轴坐标。【例】绘制三维曲面图x=[0:0.15:2*pi];y=[0:0.15:2*pi];z=sin(y')*cos(x);%矩阵相乘surf(x,y,z);xlabel('x-axis'),ylabel('y-axis'),zlabel('z-axis');title('3-Dsurf');【例】剔透玲珑球[X0,Y0,Z0]=sphere(30);%产生单位球面的三维坐标X=2*X0;Y=2*Y0;Z=2*Z0;%产生半径为2的球面的三维坐标surf(X0,Y0,Z0);%画单位球面shadinginterp%采用插补明暗处理holdon;mesh(X,Y,Z);holdoff%画外球面hiddenoff%产生透视效果axisoff%不显示坐标轴【例】卫星返回地球的运动轨线示意。R0=1;%以地球半径为一个单位a=12*R0;b=9*R0;T0=2*pi;%T0是轨道周期T=5*T0;dt=pi/100;t=[0:dt:T]';f=sqrt(a^2-b^2);%地球与另一焦点的距离th=12.5*pi/180;%卫星轨道与x-y平面的倾角E=exp(-t/20);%轨道收缩率x=E.*(a*cos(t)-f);y=E.*(b*cos(th)*sin(t));z=E.*(b*sin(th)*sin(t));plot3(x,y,z,'g')%画全程轨线[X,Y,Z]=sphere(30);X=R0*X;Y=R0*Y;Z=R0*Z;%获得单位球坐标gridon,holdon,surf(X,Y,Z),shadinginterp%画地球x1=-18*R0;x2=6*R0;y1=-12*R0;y2=12*R0;z1=-6*R0;z2=6*R0;axis([x1x2y1y2z1z2])%确定坐标范围view([11737]),comet3(x,y,z,0.02),holdoff%设视角、画运动轨线五、等高线图函数contour3【例】多峰函数peaks的等高线图[x,y,z]=peaks(30);contour3(x,y,z,16);xlabel('x-axis'),ylabel('y-axis'),zlabel('z-axis');title('contour3ofpeaks')4.6动画设计动画功能函数:getframe、moviein和movie【例】播放一个不断变化的眼球程序。m=moviein(20);%建立一个20个列向量组成的矩阵forj=1:20plot(fft(eye(j+10)))%绘制出每一幅眼球图并保存到m矩阵中m(:,j)=getframe;endmovie(m,10);%以每秒10幅的速度播放画面【例】求下列三阶线性代数方程组的近似解5426255452321321321xxxxxxxxxMATLAB程序为:A=[2-54;15-2;-124];b=[5;6;5];x=A\b132321112345111xxx543321112345111yyy解法1:分别解方程组(1)Ax=b1;(2)Ay=b2A=[1-11;5-43;211];b1=[2;-3;1];b2=[3;4;-5];x=A\b1x=-3.80001.40007.2000y=A\b2-3.6000-2.20004.4000得两个线性代数方程组的解:(1)x1=-3.8,x2=1.4,x3=7.2;(2)y1=-3.6,y2=-2.2,y3=4.4解法2:将两个方程组连在一起求解:Az=bb=[23;-34;1-5]z=A\bz=-3.8000-3.60001.4000-2.20007.20004.4000一、基本统计处理1、查取最大值MAX函数的命令格式:[Y,I]=max(X):将max(X)返回矩阵X的各列中的最大元素值及其该元素的位置赋予行向量Y与I;当X为向量时,则Y与I为单变量。[Y,I]=max(X,[],DIM):按数组X的第DIM维的方向查取其最大的元素值及其该元素的位置赋予向量Y与I。【例】查找下面数列x的最大值。x=[359618]%产生数列xx=359618y=max(x)%查出数列x中的最大值赋予yy=9[y,l]=max(x)%查出数列x中的最大值及其该元素的位置赋予y,ly=9l=3【例】分别查找下面3×4的二维数组x中各列和各行元素中的最大值。x=[1842;9625;3671]%产生二维数组xx=184296253671y=max(x)%查出二维数组x中各列元素的最大值产生赋予行向量yy=98752、查取最小值MIN函数3、求中值Y=median(X):将median(X)返回矩阵X各列元素的中值赋予行向量Y。若X为向量,则Y为单变量。Y=median(X,DIM):按数组X的第DIM维方向的元素求其中值赋予向量Y。若DIM=1,为按列操作;若DIM=2,为按行操作。若X为二维数组,Y为一个向量;若X为一维数组,则Y为单变量。【例】分别求下面数列x1与x2的中值。x1=[9-25712];%奇数个元素y1=median(x)y1=7x2=[9-256712];%偶数个元素y2=median(x)y2=6.50004、求和命令格式:Y=sum(X):将sum(X)返回矩阵X各列元素之和赋予行向量Y;若X为向量,则Y为单变量。Y=sum(X,DIM):按数组X的第DIM维的方向的元素求其和赋予Y。若DIM=1,为按列操作;若DIM=2,为按行操作。若X为二维数组,Y为一个向量;若X为一维数组,则Y为单变量。例:x=[456;148]x=456148y=sum(x,1)y=5914y=sum(x,2)y=15135、求平均值MEAN函数调用的命令格式:Y=mean(X):将mean(X)返回矩阵X各列元素之的平均值赋予行向量Y。若X为向量,则Y为单变量。Y=mean(X,DIM):按数组X的第DIM维的方向的元素求其平均值赋予向量Y。若DIM=1,为按列操作;若D

1 / 66
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功