Extracting data cell that match specific strings in different columns
2 views (last 30 days)
Show older comments
Hello!
I have a table, T, with the following variable names: Type, Ta, Sub, Day, Try, Data
I ask the person for these different inputs: inType, inTa, inSub, inDay, inTry.
% Example:
inType = 'aa';
inTa = '1';
inSub = '001';
inDay = 'ape';
I want to grab and save the cell Data, for the Table row that has the specific variable inputs in the Example (need to search for the matching strings).
More table, T, information:
Type: 90x2 % char
Ta: 90x1 % double
Sub: 90x1 % cell array of character vectors
Day: 90x1 % cell array of character vectors
Try: 90x1 % double
Data: 90x1 % cell
Can you please help?
Thank you in advance!
0 Comments
Accepted Answer
Jon
on 27 Oct 2021
Edited: Jon
on 27 Oct 2021
If I understand your problem correctly I think you could adapt the approach I show in the simple example below
% make example table
animal = {'cat' 'cat' 'dog' 'fish' 'cat' 'hamster'}'
size = {'large' 'small' 'large' 'small','large','large'}'
color = {'black','brown','white','red','striped','brown'}'
weight= [2.2,1.3,5,0.5, 1.75,0.2]'
T = table(animal,size,color,weight)
% find weight of large,striped, cat
query = table
query.animal = 'cat'
query.size = 'large'
query.color = 'striped'
% find the correct row in table
[found,idx] = ismember(query,T(:,1:3),'rows')% just use columns that need to be matched
% get the corresponding weight
w = T.weight(idx)
4 Comments
More Answers (0)
See Also
Categories
Find more on Logical 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!