Incorrect Logical Condition Statement

1 次查看(过去 30 天)
Hi,
I have a variable (let's call it 'data') and dependent on whether the user is left ('L) or right ('R') footed I wish for the respective data to be called.
I.e. for if 'L' then I want ('data') to be: 'data_l'
If 'R' is selected then I want ('data') to be: 'data_r'
Essentially I wish to add in the respective 'l' or 'r' to the end of the name in accordance to whether the person is left or right sided.
Leg = 'L'; %change between L and R
if Leg == 'L' ;
LEG = 'l';
else Leg == 'R';
LEG = 'r';
end
Tables.knee_flex_LEG % would like LEG to change to 'l' or 'r' accordingly
Unrecognized table variable name 'knee_flex_LEG'.
I believe the if function is the one I need to use. However I am unsure how to add the option into the script

采纳的回答

KSSV
KSSV 2020-6-16
Leg = 'L'; %change between L and R
if strcmp(Leg,'L') ;
LEG = 'l';
else strcmp(Leg,'R');
LEG = 'r';
end
id = 'knee_flex_LEG' ;
id = strrep(id,'LEG',LEG)
  2 个评论
Jake Bowd
Jake Bowd 2020-6-16
Hi KSSV,
This works great and thank you for that.
However, what would you recommend I do if for example it isn't just the 'knee_flex_LEG' variable and infact there's more i.e. also a 'knee_add_LEG' and 'knee_rot_LEG' variables.
If I am only concerned with the Right variables is there a way to apply 'r' ti the end of each variable?
KSSV
KSSV 2020-6-16
You can replace all the variables at once using strrep.
str{1} = "knee_add_LEG" ;
str{2} = "knee_rot_LEG" ;
str = strrep(str,'Leg',LEG)

请先登录,再进行评论。

更多回答(1 个)

Stephen23
Stephen23 2020-6-16
编辑:Stephen23 2020-6-16
Leg = 'L'; %change between L and R
vnm = sprintf('knee_flex_%s',lower(Leg));
Tables.(vnm)

类别

Help CenterFile Exchange 中查找有关 Graphics Object Programming 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by