Problem 2803. Split up vector or matrix delimited by NaNs
Solution Stats
Problem Comments
-
5 Comments
The problem suite doesn't function properly. The following statement is the culprit:
assert(isequal(c = split_nan_delimited(x), y_correct))
and can be changed to:
assert(isequal(split_nan_delimited(x), c_correct))
for all the test cases.
Furthermore, do not test for emptiness with isequal. Use isempty instead. There are many ways to generate empty cell arrays and matrices in Matlab, none of which are equal with isequal.
Doh! Embarrassing copy paste error. I hope it's all fixed now.
Test 10 still test for emptiness with isequal.
Test suite has been updated to include row vectors as test cases as well.
Solution Comments
-
4 Comments
'ans' bug? It seems that the output is not assigned correctly to ans. Solutions 559047 ...48 ...50 work.
To be more specific, several expressions does't return anything when the output is not specified. for example: cellfun(@nnz,{}); does't change the value of ans while: ans=cellfun(@nnz,{}); does (and ans = {})
Is that a bug on 'ans' or 'cellfun'?
it occurs for both arrayfun and cellfun, seems to be problem with ans. Here is an old topic on answers: http://uk.mathworks.com/matlabcentral/answers/46972-is-this-a-possible-matlab-bug-further-strange-behavior
btw. I've written "does (and ans = {})", should be "does (and ans = [])"
Problem Recent Solvers6
Suggested Problems
-
Find relatively common elements in matrix rows
1576 Solvers
-
4758 Solvers
-
Project Euler: Problem 1, Multiples of 3 and 5
2508 Solvers
-
Maintain shape of logical-index mask
67 Solvers
-
Convert hex color specification to MATLAB RGB
225 Solvers
More from this Author5
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!