필터 지우기
필터 지우기

Converting Cell Arrays to Strings

조회 수: 2 (최근 30일)
Rohan Khadatkar
Rohan Khadatkar 2012년 5월 25일
I am trying to convert a cell array to string. Got stuck in this.
[num_data,headers]=xlsread(Excel_file_name,Worksheet_name,range_select);
len_headers=max(size(headers));
for var=1:len_headers
var
dummy=headers(var)
eval(strcat(dummy,'=genvarname(headers{var});'));
eval(strcat(dummy,' = num_data(:,var);'));
end
Variable definitions:
But this is giving an error as eval() accepts only strings. dummy remains a 1x1 cell array and after using strcat, the final output of strcat also remains a cell array.
The problem is of converting a cell array to a pure string.

채택된 답변

Jan
Jan 2012년 5월 25일
Avoid eval(). There is a nicer, faster and more reliable method always.
[num_data, headers] = xlsread(Excel_file_name,Worksheet_name,range_select);
len_headers = length(headers); % Not MAX(SIZE())
for ivar = 1:len_headers % Do not shadow builtin function VAR
name = genvarname(headers{ivar});
Data.(name) = num_data(:,var);
end
  댓글 수: 1
Rohan Khadatkar
Rohan Khadatkar 2012년 5월 25일
Thanks Jan. The struct works fine. This seems to be a much better way also. Again, thanks for the help.

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

추가 답변 (1개)

Walter Roberson
Walter Roberson 2012년 5월 25일

카테고리

Help CenterFile Exchange에서 Characters and Strings에 대해 자세히 알아보기

제품

Community Treasure Hunt

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

Start Hunting!

Translated by