get all rows from table by more than one categorical

1 view (last 30 days)
Hi All,
I want to filter my table and get subtables for statistical calcs.
I use the commant:
D=table
D_sub=D(D.LogID== '2',:);
To get all rows with the LogID 2. How can I expand this commant to get for example all data from LogID 2,3,4 and 5 with one commant?
Than you
Markus

Accepted Answer

nick
nick on 16 Aug 2024
Edited: nick on 16 Aug 2024
Hi Markus,
You can retreive get all data for various LogID values with a single command using the function 'ismember', as shown below:
% Define the LogID values you want to filter
logIDsToFilter = {'2', '3', '4', '5'};
% Use ismember to filter the table
D_sub = D(ismember(D.LogID, logIDsToFilter), :);
This command filters the table D to include only the rows where LogID matches any of the specified values. You can refer to the following documentation to learn more about 'ismember' function :
Hope this helps!
  2 Comments
markus tripolt
markus tripolt on 16 Aug 2024
Thank you Neelanshu!
Thats exactly what I needed :)
nick
nick on 16 Aug 2024
Glad to know that markus. If you feel that the query has been answered, please feel free to accept the mentioned answer.

Sign in to comment.

More Answers (0)

Categories

Find more on Categorical Arrays 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!