资源描述:
《MATLAB应用 数据处理》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第5章数据处理5.1极值最大值和最小值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,47]y=max(x)%求向量x中的最大值(2)[y,k]=max(X):将向量X的最大值max(X)存入y,最大值的序号存入k,如果X中包含复数元素,则按模
2、取最大值。例2求向量x=[-43,72,9,16,23,47]的最大值及其该元素的位置x=[-43,72,9,16,23,47][y,k]=max(x)%求向量x中的最大值及其该元素的位置求向量X的最小值的函数是min(X),用法和max(X)完全相同。例3求向量x=[-43,72,9,16,23,47]的最小值及其该元素的位置x=[-43,72,9,16,23,47]z=min(x)%求向量x中的最小值[y,m]=min(x)%求向量x中的最小值及其该元素的位置矩阵的最大值和最小值求矩阵A的最大值的函数有3种调用格式,分别是:(1)max(A):给出一个行向
3、量,向量的第i个元素是矩阵A的第i列上的最大值max(a1i,a2i,…ami)。例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,-1]max(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]
4、各列的最大值及其行号A=[13,-56,78;25,63,-235;78,25,563;1,0,-1][Y,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,-1]max(A,[],1)%求A每列的最大值max(A
5、,[],2)%求A每行的最大值求最小值的函数是min,其用法和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,-1]min(A,[],1)%求A每列的最小值min(A,[],2)%求A每行的最小值min(min(A))%相当于求矩阵的的最小值两个向量或矩阵对应元素的比较函数max和min还能对两个同型的向量或矩阵进行比较,调用格式为:(1)U=max(A,B):A,B是两个同型的向量或矩阵,
6、结果U是与A,B同型的向量或矩阵,U的每个元素等于A,B对应元素的较大者。例8求矩阵A=[4,5,6;1,4,8]及B=[1,7,5;4,5,7]所有同一位置上较大元素构成的新矩阵PA=[4,5,6;1,4,8]B=[1,7,5;4,5,7]P=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,8]f=4.5P1=max(A,f)min函数的用法和max完全相同。元素
7、排序sort(X),它给出一个对向量X中的元素按升序排列的新向量。例9对向量x=[-43,72,9,16,23,47]进行升序排列x=[-43,72,9,16,23,47]sort(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
8、)%对A的每列按升序排列sort(A,