Finding values in an Array

If I have an array such as
Subject= [126;156;1992, 203, 186] % First two digits determine group, additional numbers are specific subject within that group.
Is there a method to only read the first two values of each row in order to determine what group the subject is?
Group= [12;15;19;20;18] %%%This is what I would like the result to be.

 Accepted Answer

Apply some arithmetic:
Subject = [126 156 1992 203 186 10 100 100000]
Group = fix(Subject ./ (10.^floor(log10(Subject)-1)))

More Answers (2)

Group = floor(Subject ./ 10);

1 Comment

Thanks for the reply, the only issue is that they are not all the same number of elements. Subjects elements range from 3-5 currently.

Sign in to comment.

Aldo Amaya
Aldo Amaya on 30 Jan 2014
Edited: Aldo Amaya on 30 Jan 2014
This was my solution but I wish there was a cleaner way to do it
Group = floor(Namex2 ./ 10);
i=1;
while i<=length(Group)
if Group(i)>=100
Group(i)=floor(Group(i)./ 10);
else
end
i=i+1;
end

Categories

Products

Community Treasure Hunt

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

Start Hunting!