Cody

Problem 25. Remove any row in which a NaN appears

Solution 3855268

Submitted on 26 Nov 2020
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

Test Suite

Test Status Code Input and Output
1   Pass
A = [ 1 5 8 -3 NaN 14 0 6 NaN ]; B_correct = [ 1 5 8 ]; assert(isequal(remove_nan_rows(A),B_correct))

x = 1 5 8 -3 NaN 14 0 6 NaN B = 3×3 logical array 0 0 0 0 1 0 0 0 1 C = 3×1 logical array 0 1 1 x = 1 5 8 A = 1 5 8

2   Pass
A = 1:10; B_correct = A; assert(isequal(remove_nan_rows(A),B_correct))

x = 1 2 3 4 5 6 7 8 9 10 B = 1×10 logical array 0 0 0 0 0 0 0 0 0 0 C = logical 0 x = 1 2 3 4 5 6 7 8 9 10 A = 1 2 3 4 5 6 7 8 9 10

3   Pass
A = [ 1 5 8 -3 NaN 14 0 6 6]; B_correct = [1 5 8; 0 6 6]; assert(isequal(remove_nan_rows(A),B_correct))

x = 1 5 8 -3 NaN 14 0 6 6 B = 3×3 logical array 0 0 0 0 1 0 0 0 0 C = 3×1 logical array 0 1 0 x = 1 5 8 0 6 6 A = 1 5 8 0 6 6

4   Fail
A = [ 1 3 6 NaN 3 NaN]'; B_correct = [1 3 6 3]'; assert(isequal(remove_nan_rows(A),B_correct))

x = 1 3 6 NaN 3 NaN B = 6×1 logical array 0 0 0 1 0 1 C = logical 1 x = 3 6 NaN 3 NaN A = 3 6 NaN 3 NaN

Assertion failed.

5   Fail
A = [ 1 3 6 NaN; 3 4 2 1]; B_correct = [3 4 2 1]; assert(isequal(remove_nan_rows(A),B_correct))

x = 1 3 6 NaN 3 4 2 1 B = 2×4 logical array 0 0 0 1 0 0 0 0 C = 4×1 logical array 0 0 0 1

Matrix index is out of range for deletion. Error in remove_nan_rows (line 5) x((C == 1), :) = [] Error in Test5 (line 4) assert(isequal(remove_nan_rows(A),B_correct))

Suggested Problems

More from this Author95

Community Treasure Hunt

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

Start Hunting!