How to find NaN in a cell of type table then delete the entire row
18 次查看(过去 30 天)
显示 更早的评论
Hi there,
If anyone can help me out please that would be greatly appreciated. I have this huge data that consist of 20k rows and 75 columns in excel (.csv). But I created a small working file which looks like this.
As seen, there are NaN values in this data table. So what I want to do is:
- go through the data and locate all the NaN values.
- if a row contains at least 1 NaN in the cell, I want to store the whole row to another list.
- once its gone through the list, I want to create a function that deletes the listed rows at the same time.
At the end, Im hoping to not see rows that contains any NaN values in any cell. is this possible? I have been trying to figure it out for the past couple weeks. tried bits and pieces from different solutions. nothing just seems to work. it would be greatly appreciated if anyone out there knows. PLEASE.
2 个评论
采纳的回答
madhan ravi
2019-1-7
编辑:madhan ravi
2019-1-7
Try the below example:
Age = [38;43;38;40;49];
Smoker = logical([1;0;1;0;1]);
Height = [71;69;64;67;64];
Weight = [176;163;131;133;119];
BloodPressure = [124 93; 109 77; 125 83; 117 NaN; 122 80];
T = table(Age,Smoker,Height,Weight,BloodPressure);
T=T{:,:}; % adapt this to your data
T(~any(isnan(T),2),:) % adapt this to your data
9 个评论
Luna
2019-1-7
unique function may help you on this but how will you decide which duplicate you want to remove or keep?
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!