How to Remove Rows in Table

조회 수: 16 (최근 30일)
Minjun Seo
Minjun Seo 2019년 8월 12일
편집: Adam Danz 2019년 8월 12일
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에서 Whos에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by