matlab应用 数据处理

上传人:简****9 文档编号:107903344 上传时间:2019-10-21 格式:DOC 页数:24 大小:673KB
返回 下载 相关 举报
matlab应用 数据处理_第1页
第1页 / 共24页
matlab应用 数据处理_第2页
第2页 / 共24页
matlab应用 数据处理_第3页
第3页 / 共24页
matlab应用 数据处理_第4页
第4页 / 共24页
matlab应用 数据处理_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《matlab应用 数据处理》由会员分享,可在线阅读,更多相关《matlab应用 数据处理(24页珍藏版)》请在金锄头文库上搜索。

1、第5章 数据处理51 极值最大值和最小值MATLAB提供的求数据序列的最大值和最小值的函数分别为max和min,两个函数的调用格式和操作过程类似。向量的最大值和最小值求一个向量X的最大值的函数有两种调用格式,分别是:(1) y=max(X):将向量X的最大值max(X)存入y,如果X中包含复数元素,则按模取最大值。例1 求向量x=-43,72,9,16,23,47的最大值x=-43,72,9,16,23,47y=max(x) %求向量x中的最大值(2) y,k=max(X):将向量X的最大值max(X)存入y,最大值的序号存入k,如果X中包含复数元素,则按模取最大值。例2 求向量x=-43,7

2、2,9,16,23,47的最大值及其该元素的位置x=-43,72,9,16,23,47y,k=max(x) %求向量x中的最大值及其该元素的位置求向量X的最小值的函数是min(X),用法和max(X)完全相同。例3 求向量x=-43,72,9,16,23,47的最小值及其该元素的位置x=-43,72,9,16,23,47z=min(x) %求向量x中的最小值y,m= min (x) %求向量x中的最小值及其该元素的位置矩阵的最大值和最小值求矩阵A的最大值的函数有3种调用格式,分别是:(1) max(A):给出一个行向量,向量的第i个元素是矩阵A的第i列上的最大值max(a1i,a2i,ami)

3、。例4 求矩阵A=13, -56, 78; 25, 63, -235; 78, 25, 563; 1, 0, -1各列的最大值及其整个矩阵的的最大值A=13, -56, 78; 25, 63, -235; 78, 25, 563; 1, 0, -1max(A), %求A各列的最大值max(max(A) %相当于求矩阵的的最大值(2) Y,U=max(A):给出行向量Y和U,Y向量记录A的每列的最大值,U向量记录每列最大值的行号。例5 求矩阵A=13, -56, 78; 25, 63, -235; 78, 25, 563; 1, 0, -1各列的最大值及其行号A=13, -56, 78; 25,

4、 63, -235; 78, 25, 563; 1, 0, -1Y,U=max(A)(3) max(A,dim):dim取1或2。dim取1时,该函数和max(A)完全相同;dim取2时,该函数返回一个列向量,其第i个元素是A矩阵的第i行上的最大值。例6 用max(A,dim)求矩阵A=13, -56, 78; 25, 63, -235; 78, 25, 563; 1, 0, -1每行及每列的最大值A=13, -56, 78; 25, 63, -235; 78, 25, 563; 1, 0, -1max(A,1) %求A每列的最大值max(A,2) %求A每行的最大值求最小值的函数是min,其

5、用法和max完全相同。例7 求矩阵A=13, -56, 78; 25, 63, -235; 78, 25, 563; 1, 0, -1每行及每列的最小值及整个矩阵的最小值A=13, -56, 78; 25, 63, -235; 78, 25, 563; 1, 0, -1min(A,1) %求A每列的最小值min(A,2) %求A每行的最小值min(min(A) %相当于求矩阵的的最小值 两个向量或矩阵对应元素的比较函数max和min还能对两个同型的向量或矩阵进行比较,调用格式为:(1) U=max(A,B):A,B是两个同型的向量或矩阵,结果U是与A,B同型的向量或矩阵,U的每个元素等于A,B

6、对应元素的较大者。例8 求矩阵A=4, 5, 6; 1, 4, 8及B=1, 7, 5; 4, 5, 7所有同一位置上较大元素构成的新矩阵PA=4, 5, 6; 1, 4, 8B=1, 7, 5; 4, 5, 7P=max(A,B)(2) U=max(A,n):n是一个标量,结果U是与A同型的向量或矩阵,U的每个元素等于A对应元素和n中的较大者。例8 求矩阵A=4, 5, 6; 1, 4, 8的所有元素与f=4.5比较后较大者构成的新矩阵P1A=4, 5, 6; 1, 4, 8f=4.5P1=max(A,f)min函数的用法和max完全相同。元素排序sort(X),它给出一个对向量X中的元素按

7、升序排列的新向量。例9 对向量x=-43,72,9,16,23,47进行升序排列x=-43,72,9,16,23,47sort(x)sort函数也可以对矩阵A的各列或各行重新排序,其调用格式为:Y,k=sort(A,dim)其中dim指明对A的列还是行进行排序。若dim=1,则按列排,可省略;若dim=2,则按行排。Y是排序后的矩阵,而k记录Y中的元素在A中位置。例10 对矩阵A=1, -8, 5; 4, 12, 6; 13, 7, -13进行各种排序A=1, -8, 5; 4, 12, 6; 13, 7, -13,sort(A) %对A的每列按升序排列sort(A,2) %对A的每行按升序排

8、列-sort(-A,2) %对A的每行按降序排列Y,k=sort(A) %对A的按列升序排列,并将每个元素所在的行号送到矩阵k标准方差设有N个数据组成数据序列x1,x2,.xN,这些数据的标准方差为 或 其中,在MATLAB中,提供了计算数据序列的标准方差的函数std。对于向量X,std(X)给出一个标准方差。例11 随机地取7个活塞环,测得它们的直径为(以mm计)74.001, 74.005, 74,003,74.001, 74.000, 73.998, 74.002,求它的标准方差X = 74.001, 74.005, 74,003,74.001, 74.000, 73.998, 74.0

9、02std(X)对于矩阵A,std(A)给出一个行向量,它的各个元素便是矩阵A各列或各行的标准方差。std函数的一般调用格式为:Y=std(A,flag,dim)其中dim取1或2。当dim=1时,求各列元素的标准方差;当dim=2时,则求各行元素的标准方差。flag取0或1,当flag=0时,按公式1所列公式计算标准方差,当flag=1时,按公式2所列公式计算标准方差。缺省flag=0,dim=1。例12 对矩阵A=4, 5, 6; 1, 4, 8,从不同维方向求其标准方差A=4, 5, 6; 1, 4, 8, Y1=std(A,0,1); %按按公式1各列元素的标准方差Y2=std(A,1

10、,1); %按按公式2各列元素的标准方差Y3=std(A,0,2); %按按公式1各行元素的标准方差Y4=std(A,1,2); %按按公式2各行元素的标准方差5 . 6 多项式运算在MATLAB中的实现7. 5. 1 多项式及其系数向量1多项式的向量表示法n次多项式表达为:,是n+1项之和。在MATLAB中,多项式是用它的系数构成的行向量来表示的,这个行向量完全等价于它代表的多项式,因此常把“多项式系数向量”就称为“多项式”。该向量的分量自左向右,依次表示多项式高次幂到低次幂项的系数,缺少的幂次项,其系数必须用零填补。如,在MATLAB中多项式,被表示成一个向量p = 3 5 0 -7 9。

11、2多项式转换指令可以将多项式系数向量恢复成多项式的数学形式,即把系数行向量变成易读的表达形式,使用的指令及格式为:poly2str(p, t ) 输入的参数p为多项式系数向量; 输入的t是输出多项式的变量,必须用引号界定,且不得缺省; 输出为一个多项式,其系数是p的各分量,变量为界定的字母t。例如,键入:p = 3 5 0 -7 9; %代表多项式3x4+5x3-7x+9pp = poly2str(p, t )Enter后得到下面的形式:3t4 + 5t3 - 7t + 93特殊多项式的创建一般情况下,创建多项式系数向量需要用键盘输入。但若已知多项式的全部根,则可以用poly函数建立起该多项式

12、,其调用格式为:p=poly(s)若s为具有n个元素的向量,则poly(s)建立以s为其根的多项式,且将该多项式的系数赋给向量p。p与s各分量的排序无关。例如,若键入:s = a b c d, p = poly (s),这里a , b, c, d都是具体数值时,回车则得出p = (x a)(x b)(x c)(x d)展开成多项式的系数向量。例 5 一 3 求一个多项式,使它的根为3, 5,-7, 9, 0。解 键入:s = 3, 5, -7, 9, 0; p = poly ( s )回车得出: p = 1 -10 -32 474 -945 0再键入:poly2str(p, x )回车得出:a

13、ns = x 5 - 10 x 4 - 32 x 3 + 474 x 2 - 945 x这个多项式的数学表示为:。改变输入参量s中各分量的排序,输出向量p不变。例6-22 已知 f(x)=3x5+4x3-5x2-7.2x+5(1) 计算f(x)=0 的全部根。(2) 由方程f(x)=0的根构造一个多项式g(x),并与f(x)进行对比。P=3,0,4,-5,-7.2,5;X=roots(P) %求方程f(x)=0的根G=poly(X) %求多项式g(x)将这个结果乘以3,就与f(x)一致7. 5. 2 多项式运算在MATLAB中多项式间的运算完全转换为系数向量间的运算,不同的运算对多项式系数向量

14、有一定的要求,在使用中需加注意。1多项式加减与矩阵加减一样,维数相等的系数向量方可进行加减运算,这意味着多项式同幂次对齐后才可加减。当它们的次数相同时,可以直接对多项式的系数向量进行加减运算。当它们的次数不同时,应该把次数低的多项式无高次项部分用0系数表示。也就是必须用“零”填补缺少的高幂次项系数,使它们的系数向量维数相等。例5 一 4 已知,求两个多项式的和解:p1 = 3 2 6; p2 = 3 5 0 -7 9;p1 = 0 0 p1; p = p1+ p2回车得出:p = 3 5 3 -5 15键入: poly2str (p, x)回车得出:ans = 3 x4 + 5 x3 + 3 x2 - 5 x + 15例2 计算 a=1, -2, 5, 3; b=0, 0, 6, -1; c=a+b例3 设,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号