Converting Cell Arrays to Strings
조회 수: 2 (최근 30일)
이전 댓글 표시
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.
댓글 수: 0
채택된 답변
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개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Characters and Strings에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!