Arrays 如何在matlab中同时获得数组中的多个最大值?
如何在matlab中同时获得数组中的多个最大值? 例如,在矩阵的行或列中 如果我有一个数组[45 12 56 98 67 89 23 100 201 345]Arrays 如何在matlab中同时获得数组中的多个最大值?,arrays,matlab,sorting,Arrays,Matlab,Sorting,如何在matlab中同时获得数组中的多个最大值? 例如,在矩阵的行或列中 如果我有一个数组[45 12 56 98 67 89 23 100 201 345] 如何同时获得最高值?您可以使用unique,默认情况下,它将按升序对数组进行排序(因此您希望翻转它),然后可以使用您关心的第一个N值 vals = flip(unique(data)); maxima = vals(1:N); 如果您不关心唯一最大值,那么只需使用sort vals = sort(data, 'descend'); ma
如何同时获得最高值?您可以使用
unique
,默认情况下,它将按升序对数组进行排序(因此您希望翻转它),然后可以使用您关心的第一个N
值
vals = flip(unique(data));
maxima = vals(1:N);
如果您不关心唯一最大值,那么只需使用sort
vals = sort(data, 'descend');
maxima = vals(1:N);
如果您希望沿某一行/列显示最大值或最小值,可以使用dim
输入到min
或max
% Maximum per column
maxima = max(data, [], 1);
% Maximum per row
maxima = max(data, [], 2);
您可以使用unique
,默认情况下,它将按升序对数组进行排序(因此您需要flip
it),然后可以使用您关心的第一个N
值
vals = flip(unique(data));
maxima = vals(1:N);
如果您不关心唯一最大值,那么只需使用sort
vals = sort(data, 'descend');
maxima = vals(1:N);
如果您希望沿某一行/列显示最大值或最小值,可以使用dim
输入到min
或max
% Maximum per column
maxima = max(data, [], 1);
% Maximum per row
maxima = max(data, [], 2);