Finding a specific index while labeling it with another

2 次查看(过去 30 天)
If I have to find which person has the youngest age by labeling which person they are, how would I do that?
The array looks like this: AgeArray=[person;age] ---> AgeArray=[1, 2, 3, 4, 5; 12, 46, 84, 8, 23]
The left side is person 1, person 2, person 3, and so on, and the right side is the age, person 1 is 12 years old, person 2 is 46 years old, etc.
If I used the min(age) that will yield 8, which is person 4, but I am looking for the function to have the answer come back as person 4.
Thank you and sorry if it is confusing.
  1 个评论
Stephen23
Stephen23 2021-2-19
编辑:Stephen23 2021-2-19
M = [1, 2, 3, 4, 5; 12, 46, 84, 8, 23]
M = 2×5
1 2 3 4 5 12 46 84 8 23
[~,X] = min(M(2,:));
P = M(1,X)
P = 4

请先登录,再进行评论。

采纳的回答

KALYAN ACHARJYA
KALYAN ACHARJYA 2021-2-19
编辑:KALYAN ACHARJYA 2021-2-19
AgeArray=[1, 2, 3, 4, 5; 12, 46, 84, 8, 23]
per=AgeArray(1,:);
min_per=per(min(AgeArray(2,:))==AgeArray(2,:))
Result:
min_per =
4
Considering AgeArray as the following format
AgeArray =
1 2 3 4 5
12 46 84 8 23
If the Given data in this format
AgeArray =
1 12
2 46
3 84
4 8
5 23
Then
per=AgeArray(:,1);
min_per=per(min(AgeArray(:,2))==AgeArray(:,2))
Result:
min_per =
4

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Data Type Conversion 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by