Selecting Elements of Matrix Given Index Value...

39 views (last 30 days)
Hi all!
I have an array with a list of indices that I am interested in extracting from a matrix. For example, the array is [96, 106, 108...] meaning I have to select the 96th, 106th, and 108th elements from a matrix, matrix A. However, matrix A has three columns (latitude, longitude, and frequency). When I try to use a for loop to pull the given elements (all thee columns of the matrix) based on index value, I only get a value for latitude (the first column). This would defeat the purpose of my project, since I would need to have the latitude, longitude, and frequency of all of the index values I have. Any suggestions? Some code provided below:
omit = [96, 106, 108, 134, 167, 194, 200, 203]
A = [latitude longitude frequency]
for i = omit
x = A(i)
end
My output (only latitude values): [-5, -4, -3, 0, 23.5, 30, 35, 75]

Accepted Answer

Stephen23
Stephen23 on 21 Apr 2020
Edited: Stephen23 on 21 Apr 2020
x = A(i,:)
Or without the loop:
x = A(omit,:)
Very basic MATLAB indexing like this is explained in the introductory tutorials:
  1 Comment
Michelle De Luna
Michelle De Luna on 21 Apr 2020
Stephen, thank you for your help! And thank you for the link - I'll be sure to review it! Again, thank you! :)

Sign in to comment.

More Answers (0)

Categories

Find more on Resizing and Reshaping Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!