how to create a new variable based off an if else statement on one variable?
18 次查看(过去 30 天)
显示 更早的评论
I have created a table in MATLAB, one of the variables is called animals. Within that coloum are "dogs", "cats", "sheep". I want to create code that states if table.animals == "dogs" then create a new variable called numbers and assign the number 1 to the rows that have dogs stated in it. If table.animals == "cats" then in that same new variable called numbers assign the number 2. and similar with sheep expect the number 3. How would I go about create this type of code?
This is something similar to what I have tried but it does not work.
if tables.animals == "Dogs"
tables.numbers = 1
elseif tables.animals == "cats"
tables.numbers = 2
else tables.numbers = 3
end
my code ends up usually create that new coloum but places the number 3 for all the rows.
0 个评论
采纳的回答
Voss
2022-12-1
t = table(["cats";"dogs";"cats";"sheep"],'VariableNames',"animals")
all_animals = ["dogs" "cats" "sheep"];
[~,idx] = ismember(t.animals,all_animals);
t.numbers = idx
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Data Type Identification 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!