How to create variables using strings in an array?
5 ビュー (過去 30 日間)
古いコメントを表示
str1={'x','trs','height','width'}
str2='db_xtr'
For example, I wanted to do:
for ivar=1:size(str1,2)
C_%str1%_%str2%=ivar^2+2
end
to get following variables:
C_x_db_xtr = 1^2+2
C_trs_db_xtr = 2^2+2
C_height_db_xtr = 3^2+2
C_width_db_xtr = 4^2+2
seems function "genvarname" would do something similar but do not know how to do it for my particular case.
Thanks...
0 件のコメント
採用された回答
その他の回答 (1 件)
Andrei Bobrov
2013 年 9 月 15 日
str1={'x','trs','height','width'}
str2='db_xtr'
input1 = [strcat(str1,'_',str2);num2cell((1:numel(str1)).^2+2)]
C = struct(input1{:})
2 件のコメント
Walter Roberson
2013 年 9 月 15 日
Don't do that.
C{ivar1}{ivar2} = ... some matrix expression ...
参考
カテゴリ
Help Center および File Exchange で Cell Arrays についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!