This seems like a bug in the 'categorical' class

if I define a cellstr:
>>n={'a','b','b','c'}
I can make it a categorical variable:
>> c=categorical(n)
c =
a b b c
and it will display correctly, but if one of the strings contains a parenthesis:
>> n={'a(','b','b','c'}
n =
'a(' 'b' 'b' 'c'
>> c=categorical(n)
c =
'a(' ' $1 ' ' $1 ' 'c'
The display after that element is showing some kind of pointer instead of the value.
There is also a problem with close-paren, but a little different.
>> n={'a)','b','b','c'}
n =
'a)' 'b' 'b' 'c'
>> c=categorical(n)
c =
a )' b ' b ' c '
Doesn't happen with [.
Clearly seems to be parse error in the display function for the class.
Anyway, thought you should know and wondering if there is a fix/workaround.
Thanks, Michael

 채택된 답변

Peter Perkins
Peter Perkins 2015년 5월 13일

0 개 추천

Michael, thanks for reporting this. Not sure what version of MATLAB you're using, but this was fixed in R2014b:
>> categorical({'a(','b','b','c'})
ans =
a( b b c
>> categorical({'a)','b','b','c'})
ans =
a) b b c

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Get Started with MATLAB에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!

Translated by