matlab中对一个数组求最大的几个数
来源:学生作业帮 编辑:拍题作业网作业帮 分类:英语作业 时间:2024/04/28 02:32:50
matlab中对一个数组求最大的几个数
我需要处理一个1*10000的矩阵,首先按照每m个数一个周期,求每个周期中最大的数,这样就有10000/m个数.再在这些数中求最大的那n个.这里肯定是可以整除.最后,要返回的值是这n个数的值和他们在原来那个1*10000的矩阵中的位置,并且按照在原矩阵中的先后顺序排好.
我举例如下.a=[3,15,6,21,18,2,18,19,1,4,7,29,21,23,29,23,14,6,9,29,31,],对这个数组,每3个数是一个周期,这就是7个周期,会求出7个数.依次是[15,21,19,29,29,23,31]然后在这7个数中取最大的四个数,那应该是[29,29,23,31].然后返回这四个数和他们在原矩阵中的位置.
记为:a1=29,n1=12;a2=29,n2=15;a3=23,n3=16;a4=31,n4=21.也可以返回成矩阵的形式[29,29,23,31;12,15,16,21].
Sort in ascending order.For vectors,SORT(X) sorts the elements of X in ascending order.For matrices,SORT(X) sorts each column of X in ascending order.For N-D arrays,SORT(X) sorts the along the first non-singleton dimension of X.When X is a cell array of strings,SORT(X) sorts the strings in ASCII dictionary order.SORT(X,DIM) sorts along the dimension DIM.[Y,I] = SORT(X) also returns an index matrix I.If X is a vector,then Y = X(I).If X is an m-by-n matrix,then for j = 1:n,Y(:,j) = X(I(:,j),j); end When X is complex,the elements are sorted by ABS(X).Complex matches are further sorted by ANGLE(X).When more than one element has the same value,the order of the elements are preserved in the sorted result and the indexes of equal elements will be ascending in any index matrix.Example:If X = [3,7,5; 0,4,2] then sort(X,1) is [0,4,2;3,7,5] and sort(X,2) is [3,5,7;0,2,4];See also SORTROWS,MIN,MAX,MEAN,MEDIAN.Overloaded methods help cell/sort.m;xregdesign/sort.m;sweepset/sort.m
我需要处理一个1*10000的矩阵,首先按照每m个数一个周期,求每个周期中最大的数,这样就有10000/m个数.再在这些数中求最大的那n个.这里肯定是可以整除.最后,要返回的值是这n个数的值和他们在原来那个1*10000的矩阵中的位置,并且按照在原矩阵中的先后顺序排好.
我举例如下.a=[3,15,6,21,18,2,18,19,1,4,7,29,21,23,29,23,14,6,9,29,31,],对这个数组,每3个数是一个周期,这就是7个周期,会求出7个数.依次是[15,21,19,29,29,23,31]然后在这7个数中取最大的四个数,那应该是[29,29,23,31].然后返回这四个数和他们在原矩阵中的位置.
记为:a1=29,n1=12;a2=29,n2=15;a3=23,n3=16;a4=31,n4=21.也可以返回成矩阵的形式[29,29,23,31;12,15,16,21].
Sort in ascending order.For vectors,SORT(X) sorts the elements of X in ascending order.For matrices,SORT(X) sorts each column of X in ascending order.For N-D arrays,SORT(X) sorts the along the first non-singleton dimension of X.When X is a cell array of strings,SORT(X) sorts the strings in ASCII dictionary order.SORT(X,DIM) sorts along the dimension DIM.[Y,I] = SORT(X) also returns an index matrix I.If X is a vector,then Y = X(I).If X is an m-by-n matrix,then for j = 1:n,Y(:,j) = X(I(:,j),j); end When X is complex,the elements are sorted by ABS(X).Complex matches are further sorted by ANGLE(X).When more than one element has the same value,the order of the elements are preserved in the sorted result and the indexes of equal elements will be ascending in any index matrix.Example:If X = [3,7,5; 0,4,2] then sort(X,1) is [0,4,2;3,7,5] and sort(X,2) is [3,5,7;0,2,4];See also SORTROWS,MIN,MAX,MEAN,MEDIAN.Overloaded methods help cell/sort.m;xregdesign/sort.m;sweepset/sort.m
改好了.和我想的一样,是升序.
%下面是你要输入的数据
a=[3,15,6,21,18,2,18,19,1,4,7,29 21 23 29 23 14 6 9 29 31]%原矩阵
m=3%周期
n=4%你要取的前n个数
%下面一个字也不用改
b=reshape(a,m,[]);
[c i]=max(b);
[d,j]=sort(c);
j=sort(j(end:-1:end-n+1));
k=m*(j-1)+i(j);
c=[a(k);k]%答案
%下面是你要输入的数据
a=[3,15,6,21,18,2,18,19,1,4,7,29 21 23 29 23 14 6 9 29 31]%原矩阵
m=3%周期
n=4%你要取的前n个数
%下面一个字也不用改
b=reshape(a,m,[]);
[c i]=max(b);
[d,j]=sort(c);
j=sort(j(end:-1:end-n+1));
k=m*(j-1)+i(j);
c=[a(k);k]%答案
matlab中对一个数组求最大的几个数
matlab数组中求最大的几个数并返回其位置
matlab 编写一个m函数文件,求一数组中的元素,使得该元素的绝对值在该数组所有元素的绝对值中是最大的.
matlab中,要对一个数组全部赋值为2,3这样的数应该用什么样的语句啊?
如何用matlab对数组中每个数开方
用matlab如何求出一个数组中最接近某个数的两个数的下标?
matlab问题 如何删除数组中相邻两个相同的数只保留一个
求matlab程序:从一数组中,按顺序取出位于a,b之间的数.
matlab中怎么对由两个一维数组绘出的曲线求积分
matlab中如何根据一个二维数组的列,求另一列的均值
Matlab中怎么返回一个数组中元素的个数
matlab 删除数组中相同数