passing strings to a function to call commands
1 次查看(过去 30 天)
显示 更早的评论
I'd like to create a function to automate the passing variable names to statement. I tried to create a function to achieve it using is varargin and foo loop. The challenge is to pass unknown number for string names to a function call.
Manual method is as follow.
Vdc(1,:) = logsout.get('Vdc').Values.Data(:,1) ;
Vc(1,:) =logsout.get('Vc').Values.Data(:,1) ;
I_L(1,:) =logsout.get('I_L').Values.Data(:,1) ;
The function I created with errors
function logger(varargin)
% input is in the format logger(Vdc,Vin,Iload)
% where "logsout" is the name of the object stored Vdc,Vin,Iload,IL,,,,
% I want to automatically extract selected variables and store them with
% the original name
nsize=nargin;
for k=1:size
tag=spprintf(varagin(k));
data(:,1) = logsout.get('Vdc').Values.Data(:,1) ; % where tag='Vdc'
assignin('base',tag,data);
end
Any suggestions appreciated.
1 个评论
回答(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!