Filter a table by 2 columns
117 ビュー (過去 30 日間)
Hi, I'm using 'patients' (load patients) to learn more about tables. I'm trying to filter the table by gender and smoker status by following
T = table(LastName,Age,Smoker,Gender)
but get the error
Undefined operator '==' for input arguments of type 'cell'.
How can I filter the table by male and smoker, and still keep the information of LastName and Age?
回答 (3 件)
Peter Perkins 2019 年 3 月 11 日
Orongo, do this:
T.Gender = categorical(T.Gender);
works as you expect, and what you are really asking about is this
Long story short: Gender in the mat file is what's called a cell array of char vectors (a.k.a. a "cellstr"). Those don't support testing using ==, thus KSSV's suggestion of strcmp. But if you convert them to categorical, you can use ==. You could also convert to string, but categorical is more appropriate in this case.