I have a question regarding adding a string array to a matrix. i.e.
string array = {'A','B','C'}; B = eye(3); I want to concatenate those two in column, i.e. I want to get is eventually;
[1,0,0,A; 0,1,0,B; 0,0,1,C]
Thank you so much for your help in advance! Best,

답변 (1개)

Adam
Adam 2017년 3월 1일
편집: Adam 2017년 3월 1일

0 개 추천

stringArray = {'A','B','C'};
B = eye(3);
result = [num2cell(B) stringArray'];
is the best you can do, resulting in a cell array.
[1,0,0,A; 0,1,0,B; 0,0,1,C]
is not a valid array in Matlab unless A, B and C are variables, but since you are talking about a cell array of chars I assume that is not the case.

댓글 수: 4

Hyon Kim
Hyon Kim 2017년 3월 1일
Thank you Adam Do you know why only cell array allows to mix char/string with numbers? Please let me know if you happen to know. Best,
Adam
Adam 2017년 3월 1일
편집: Adam 2017년 3월 1일
Because that is their purpose. All other arrays are uni-type (ish).
Hyon Kim
Hyon Kim 2017년 3월 2일
I see. Thank you so much for your help!
tables can also mix strings with numbers, but they are pretty much implemented as cell arrays.

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

카테고리

도움말 센터 및 File Exchange에서 Characters and Strings에 대해 자세히 알아보기

질문:

2017년 3월 1일

댓글:

2017년 3월 2일

Community Treasure Hunt

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

Start Hunting!

Translated by