conditional selection on table

I want the conditional selecton of a row in a table
  1. where name is ali
  2. where name is ali and age is between 25 to 30
  3. where name is ahmed, I want to multply his age with 2
kindly please help

Answers (1)

KSSV
KSSV on 15 Jul 2020
Edited: KSSV on 15 Jul 2020
You can access the columns of the table using T.columnname or T.(1), T.(2) etc...
To get the index where name 'Ali' lies, you can use
idx = strcmp(T.name,'Ali') ; % assuming name column to carry names
idx = strcmp(T.(1),'Ali') ; % assuming first column to be names
To get the ages indices.
id = T(idx).age>= 25 & T(idx).age <= 30 ; % assuming age is the column whihc has ages

1 Comment

Thank, but its not doing the job. Its 2 line you suggested only returning the array of 0s and 1s. I need the whole row of the record where name ali is present. The last code you suggested is producing error
"Subscripting into a table using one subscript (as in t(i)) or three or more subscripts (as in t(i,j,k)) is not supported. Always specify a row subscript and a variable subscript, as in t(rows,vars)."
kindly if you can guide

Sign in to comment.

Categories

Find more on MATLAB in Help Center and File Exchange

Asked:

on 15 Jul 2020

Commented:

on 16 Jul 2020

Community Treasure Hunt

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

Start Hunting!