필터 지우기
필터 지우기

converting categorical array to cell array

조회 수: 154 (최근 30일)
Boy
Boy 2016년 4월 8일
편집: cui,xingxing 2024년 4월 27일
Hi all, I am trying to convert a categorical array to a cell array so that I can use the strrep function, but i cant seem to find anyway to do it after scouring the web to the best of my abilities. My categorical column contains string that have the '_' character and i want to search the column and replace any string that has '_' with '-'. Is there any way I can do it without converting the datatype? Any help would be greatly appreciated. Thank you

채택된 답변

Fangjun Jiang
Fangjun Jiang 2016년 4월 8일
a=nominal({'R_','G_','B_'});
b=cellstr(a);
c=strrep(b,'_','-');
d=nominal(c)
d =
R- G- B-
  댓글 수: 2
Boy
Boy 2016년 4월 8일
이동: Fangjun Jiang 2024년 1월 8일
Thank you for the quick response Fangjun. But i have a dataset where column 3 is nominal datatype. Can i change the entire column from nominal to cell array? Thank You
Salma Hassan
Salma Hassan 2017년 12월 24일
이동: Fangjun Jiang 2024년 1월 8일
C = cellstr(A) check this link https://www.mathworks.com/help/matlab/ref/cellstr.html

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

cui,xingxing
cui,xingxing 2024년 1월 6일
편집: cui,xingxing 2024년 4월 27일
@Fangjun Jiang update new workflow.
a=categorical({'R_','G_','B_'});
b=string(a);
c=replace(b,'_','-');
d=categorical(c)
d = 1×3 categorical array
R- G- B-
BTW, Convert categorical array to cell array in general way Example.
A = categorical(["A","B","C","D","hello","world"]) % categorical array
A = 1×6 categorical array
A B C D hello world
dst = num2cell(A) % cell array
dst = 1×6 cell array
{[A]} {[B]} {[C]} {[D]} {[hello]} {[world]}
if A is a complex arrays,also can use mat2cell function.
A = categorical(["A","B","Hello","world .";
"1","2","3","四"])
A = 2×4 categorical array
A B Hello world . 1 2 3 四
dst = mat2cell(A,[1,1],[2,1,1])
dst = 2×3 cell array
{[A B]} {[Hello]} {[world .]} {[1 2]} {[3 ]} {[四 ]}
-------------------------Off-topic interlude, 2024-------------------------------
I am currently looking for a job in the field of CV algorithm development, based in Shenzhen, Guangdong, China,or a remote support position. I would be very grateful if anyone is willing to offer me a job or make a recommendation. My preliminary resume can be found at: https://cuixing158.github.io/about/ . Thank you!
Email: cuixingxing150@gmail.com

카테고리

Help CenterFile Exchange에서 Data Type Conversion에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by