Arrays MATLAB:将索引与数组一起打印

Arrays MATLAB:将索引与数组一起打印,arrays,matlab,Arrays,Matlab,我不熟悉使用MATLAB,我有一个大小为[131 x 4]的数组。我希望找到第2列中包含最高和最低值的行。(我的第一列用于标记,接下来的三列用作坐标) 我希望能够提取列2中包含最高和最低值的行,例如,如果我知道其索引为5,我将使用: LARGESTX = MYARRAY(5,:) MATLAB网站提供了如何使用索引选择数组中特定元素的说明,但由于我的数组太大,我无法查看最大/最小值的索引 是否有一种方法可以将每行的索引打印到我的数组旁边?或者要创建一个新数组,并将索引附加到每一行?您可以使用m

我不熟悉使用MATLAB,我有一个大小为[131 x 4]的数组。我希望找到第2列中包含最高和最低值的行。(我的第一列用于标记,接下来的三列用作坐标)

我希望能够提取列2中包含最高和最低值的行,例如,如果我知道其索引为5,我将使用:

LARGESTX = MYARRAY(5,:)
MATLAB网站提供了如何使用索引选择数组中特定元素的说明,但由于我的数组太大,我无法查看最大/最小值的索引


是否有一种方法可以将每行的索引打印到我的数组旁边?或者要创建一个新数组,并将索引附加到每一行?

您可以使用
min
max
的第二个输出来简单地获取索引,无需从显示整个矩阵中“查看”正确的行

[~,minIdx] = min( myarray(:,2) ); % minIdx is the row in column 2 with the min value
[~,maxIdx] = max( myarray(:,2) ); % maxIdx is the row in column 2 with the max value
然后,您可以按照建议编制索引

smallestRow = myarray( minIdx, : );
largestRow = myarray( maxIdx, : );

注意我使用了一个波浪号(
~
)来代替变量作为
min
max
的第一个输出,因为我对这些输出不感兴趣。波浪线导致丢弃第一个输出


除此之外,执行您实际要求的操作(用行号显示数组)的最简单方法是查看工作区中的数组。这将为您提供一个包含行号和列号的表


您可以使用
min
max
的第二个输出来简单地获取索引,而无需通过显示整个矩阵来“查看”正确的行

[~,minIdx] = min( myarray(:,2) ); % minIdx is the row in column 2 with the min value
[~,maxIdx] = max( myarray(:,2) ); % maxIdx is the row in column 2 with the max value
然后,您可以按照建议编制索引

smallestRow = myarray( minIdx, : );
largestRow = myarray( maxIdx, : );

注意我使用了一个波浪号(
~
)来代替变量作为
min
max
的第一个输出,因为我对这些输出不感兴趣。波浪线导致丢弃第一个输出


除此之外,执行您实际要求的操作(用行号显示数组)的最简单方法是查看工作区中的数组。这将为您提供一个包含行号和列号的表


问题的措辞不同,因为你已经走上了以自己的方式(通过显示)解决问题的道路,但问题的根源是重复的。问题的措辞不同,因为你已经走上了以自己的方式(通过显示)解决问题的道路,但问题的根源是重复的。