structure indices in one line

4 views (last 30 days)
Robert
Robert on 1 Oct 2012
I would like to extract values from a structure. I know how to do it in two lines of code, but is it possible in one?
temp = urlAuthsMap.values;
temp{1}
My solution would have been something like [urlAuthsMap.values]{1} but that doesn't work.
>> temp = urlAuthsMap.values
Columns 1 through 11
{1x4 cell} {1x1 cell} {1x3 cell} ...
>> temp{1}
ans =
'S. A. Abraham' 'H. A. Bodner' 'C. G. Harrington' 'R. C. White Jr.'

Accepted Answer

Matt Fig
Matt Fig on 1 Oct 2012
Edited: Matt Fig on 1 Oct 2012
V = values(urlAuthsMap,KH); % KH is the key you want. See key.
From the link you showed above .... ;-)
  1 Comment
Robert
Robert on 19 Oct 2012
Thanks a lot for your answer by email. i'll paste it in below
As far as I know, there is no way to index into newMap the way you want to.
keySet = {'Jun','Jul','Aug'}; valueSet = [ 69.9, 32.3, 37.3]; newMap = containers.Map(keySet,valueSet); values(newMap,keySet(1)) % This is how to do it.
As far as your other example, try this:
a{1} = [1,2,3] a{2}=[4,5,6]
a{2}(1)

Sign in to comment.

More Answers (1)

Image Analyst
Image Analyst on 1 Oct 2012
Edited: Image Analyst on 1 Oct 2012
urlAuthsMap.values = {'S. A. Abraham', 'H. A. Bodner', 'C. G. Harrington', 'R. C. White Jr.'}
% Here's how to do it.
caName1 = urlAuthsMap.values(1) % This is a cell.
strName1 = urlAuthsMap.values{1} % This is a string.
  1 Comment
Robert
Robert on 1 Oct 2012
Thanks, I've tried this but am getting errors for both. I realized that maybe my map object is special and doesn't work like a normal cell array. Any ideas?
urlAuthsMap.values{1} Error using containers.Map/values Invalid input for argument 2 (rhs2): Value must be 'cell'.
>> urlAuthsMap.values(1) Error using containers.Map/values Invalid input for argument 2 (rhs2): Value must be 'cell'.

Sign in to comment.

Categories

Find more on Characters and Strings in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

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

Start Hunting!