MATLAB: Table linear indexing error

MATLAB

Why am I getting an error when trying to linear index into my table?
>> load patients
>> T = table(Gender,Smoker,Height,Weight);
>> T(:,4)(T.Smoker==1)
Error: ()-indexing must appear last in an index expression.

Best Answer

The syntax being used is trying to index into a table that has already been indexed into. Instead, index only once to get the desired behavior:
>> T(T.Smoker==1, 4)
Alternatively, this can be broken up into two lines of code:
>> temp = T(:,4);
>> temp(T.Smoker==1,:)