Unique rows cell array ignored

4 views (last 30 days)
Jim Hokanson
Jim Hokanson on 1 May 2013
I recently tried to find the unique rows of a cell array and got the following warning:
Warning: The 'rows' input is not supported for cell array inputs.
What was confusing to me was that this option was not supported and yet only a warning was thrown, not an error. After further examination it appears that unique is performed on all elements in the matrix, which is obviously not what I wanted.
Does this seem right? Are there other examples in Matlab where a function ignores an option and then proceeds to do something that is fundamentally different?
Thanks, Jim
  1 Comment
Cedric
Cedric on 1 May 2013
Edited: Cedric on 1 May 2013
I'll be interested to see what Mathworks people will answer (maybe tomorrow). If I had to place a bet, I'd say that it is for backward compatibility with a "feature" that was a bug but that might have been exploited by people.. who could therefore disable the warning and use a "silent" backward compatibility.
The doc indicates a change in the behavior of UNIQUE and the support for a 'legacy' option. Also, the version of UNIQUE called with cell args is available as an M-file
C:\Program Files\MATLAB\R2012b\toolbox\matlab\ops\@cell\unique.m
which looks quite experimental/transitional.

Sign in to comment.

Answers (0)

Community Treasure Hunt

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

Start Hunting!