String to Array Matrix (Help)

조회 수: 1 (최근 30일)
Elsen
Elsen 2015년 3월 16일
댓글: Elsen 2015년 3월 16일
I have some problems to covert string into array matrix. For example : I have a matrix
A=[1 2 3 4 5; 6 7 8 9 10; 11 12 13 14 15]
And then, i have an input string/char as change array matrix such that y='1:2:3,1:4'. If we calculate manual, then the results are a matrix x=[1 2 3 4;11 12 13 14]. However, there are some problems when i want to insert string y='1:2:3,1:4' as array matrix. For example : I have a variable x, and then i will calculate matrix contents such as x=A(y). (There is some error). I was trying with cellstr, etc. It didn't work. Can you help me ? I will apply this concept into my gui matlab. Thank you for your help.
  댓글 수: 2
Jos (10584)
Jos (10584) 2015년 3월 16일
How are A, x and y related? And why is y a string?
Elsen
Elsen 2015년 3월 16일
Thank you for your respon. I will describe you why they are correlated. I had this code in my gui matlab : input = get(edit1.handles,'String'); x=data(input); I will use input parameter for taking some array matrix that I wanne be used. Before, I created matrix data, but the problem is input (sstring). Thanknyou

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

채택된 답변

Guillaume
Guillaume 2015년 3월 16일
Note: input is a built-in function of matlab so avoid using that as a variable name. It's not a good variable name anyway as it does not tell you anything about the purpose of the variable (they're all either input, output or temporaries).
I'm not sure the way you're designing this is a good idea in the first place, but a way to parse and use your string would be:
A = [1 2 3 4 5; 6 7 8 9 10; 11 12 13 14 15];
Aindexstr = '1:2:3, 1:4';
Aindex = cellfun(@str2num, strsplit(Aindexstr, ','), 'UniformOutput', false);
newA = A(Aindex{:})
This uses expansion of cell arrays into comma separated list to index A using the cell array Aindex.
  댓글 수: 1
Elsen
Elsen 2015년 3월 16일
It's great. Thank you for your help

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by