How to get a subtable out of a large table on conditions

5 views (last 30 days)
I have a Matlab table A. I want to extract some rows from the table by certain key words and put the result into another table. The old table has 6 columns, I want to extract the first column to have value 'ATL', and the 3rd column to have value '7/7/2015'. How to do that?
tmpTbl = my_prices('ATL',:,'7/7/2015', :,:, :)
But it keeps saying error. I am totally confused here.
Thanks!

Accepted Answer

Mohammad Abouali
Mohammad Abouali on 9 Jul 2015
mask=strcmpi(myTable.firstColumn(:),'ATL') & ...
strcmpi(myTable.thirdColumn(:),'7/7/2015');
newTable=myTable(mask,:);
of course change the 'firstColumn', 'thirdColumn', to their appropriate name (also goes for myTable and newTable).
  2 Comments
JFz
JFz on 9 Jul 2015
Hi, Mohammad, Thank you so much! I tested the first part: mask=strcmpi(myTable.firstColumn(:),'ATL') It works. But when I include the 2nd part, it failed. I guess I didn't type it right. Besides, I don't understand the '&...'. Is there a link in mathworks that explain it? Thanks. Jen
JFz
JFz on 9 Jul 2015
This line: mask=strcmpi(myTable.firstColumn(:),'ATL') & ... strcmpi(myTable.thirdColumn(:),'7/7/2015');
| Error: Expression or statement is incomplete or incorrect.

Sign in to comment.

More Answers (0)

Tags

Products

Community Treasure Hunt

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

Start Hunting!