How to Remove Rows in Table

22 次查看(过去 30 天)
Hi, I have a data table here.
Let's say that I want to get rid of the people that does not like animal, signified by a blank space instead of a Y.
How do I make a new data table that removes these rows and forms a new table that only contains the Y.
Thank you!

采纳的回答

Adam Danz
Adam Danz 2019-8-12
Read in the data; determine which rows are empty under "LikesAnimals"; then remove those rows.
t = readtable('data table.xlsx','ReadRowNames',true); % use full path if possible
noLikeIdx = cellfun(@isempty,t.LikesAnimals);
t(noLikeIdx, :) = [];
  6 个评论
Minjun Seo
Minjun Seo 2019-8-12
Actually, it is represented as NaN, is there a way to similarly filter out those with NaN?
Adam Danz
Adam Danz 2019-8-12
编辑:Adam Danz 2019-8-12
Yes. In my answer above, the variable "noLikeIdx" is an index of rows that will be eliminated.
Here's how to create an index of rows that have NaN values or values less than 0 based on values stored in a column named "OtherData".
rowIdx = isnan(t.OtherData) | t.OtherData < 0;
% { find nan values} or {values less than 0}

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Structures 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by