ismember function with nested arrays

2 views (last 30 days)
Benjamin
Benjamin on 10 Oct 2012
I am trying to determine if a list from an excel file (selected_signals) exists in the a more complete list ( list_of_signals).
The second list has nested arrays in it and is a sort of hierarchy. For example there is one column for a string name and then another column for an array that contains more information. If you go into to the nested array the same thing will be seen (one column for a string name and another for another nested array). This will eventual stop when there is no longer a second column for an array because it is the end of the naming hierarchy.
Can you use the ismember function with arrays that have nested arrays?
Thank you!
The selected signals array is a 2D array:
B={'AS1A','_00_AR'}
The list of signals array could be something like this but with more entries:
A={ {'AS1A', { {'_00_AR', {'LABEL06'; 'LABEL07'} }}}; {'AS1B', { {'_00_AR', {'LABEL06'; 'LABEL07'} }}}}
Code:
NRTS = handles.NRTS;
list_of_signals = NRTS.list_of_model_outputs;
if ismember(selected_signals, list_of_signals)
handles.NRTS = NRTS
set(handles.lb_selected_signals, 'String', selected_signals);
h = msgbox('This is a valid output choice','Valid Output');
else
handles.NRTS = NRTS
msg = ['One or more of the selected output is invalid. '];
h = errordlg(msg,'Invalid Output');
end
  5 Comments
Matt Fig
Matt Fig on 10 Oct 2012
I second Jan's comment. Post some valid MATLAB code we can copy and paste. The code can be short and simple, yet it should accurately represent the salient features of your data...
Benjamin
Benjamin on 10 Oct 2012
Edited: Benjamin on 10 Oct 2012
That is fair. I have added two arrays above. They would only differ in that there would be more entries in each.
Calling ismember(B, A) gives me the error "Input must be cell arrays of strings." I assume this is due to some of the cells being arrays. Is there a work around?

Sign in to comment.

Answers (0)

Categories

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

Tags

Community Treasure Hunt

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

Start Hunting!