MATLAB Answers

Indexing of a table.

334 views (last 30 days)
Philipp Mueller
Philipp Mueller on 9 Dec 2016
Commented: Peter Perkins on 11 Dec 2016
I have a table called "diagramoptions". This table has 2 columns. With the name Key and Value. For example i want to know the value from number_of_plots. How can i get the number 4? See attachment Picture
My idea: I search the row index of the variable number_of_plots. -> then i try to get the right cell -> (row_index,2) the number 2 is the second column in my table. The return value should be 4.
I tried a lot without any results:
test_value2 = diagramoptions(3,1)% I know it works but it is hardcoded
test_value3 = diagramoptions(:,{'Key'})
thank you

Accepted Answer

KSSV
KSSV on 9 Dec 2016
colorval = diagramoptions{3,2}
Your table will be a cell of size 8x2, to pick number of plots you have to give index (3,2) as it's value falls in the index.
  4 Comments
Peter Perkins
Peter Perkins on 11 Dec 2016
Philipp, if your key values are always text, turn them into the row names of the table. Then, to use KSSV's example, you can just do this:
HarryAge = T.Age('Harry')
Even if you don't do that, you may find that
T.Age(strcmp(T.Name,'Harry'))
is simpler than converting the table to a cell array. Hope this helps.

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!