For loop for checking through categorical

MyTable = readtable("table.xlsx","TextType","string")
MyTable = convertvars(MyTable, ["Var 1" "Var 2"], "categorical")
result = [win, draw, lose]
for j = 1:length(MyTable)
if MyTable(j) == "Manchester City"
result = [win,0,0]
MyTable.Result(j) = result;
elseif MyTable(j) == "Chelsea"
result = [0,draw,0]
MyTable.Result(j) = result;
else
result = [0,0,lose]
MyTable.Result(j) = result;
end
end
Hello, I would like to create a for loop that checks through the categorical array of strings and if a string is "Manchester City" or "Chelsea" I would like to store the following values: win, draw, lose (stored in a string vector "result") in the new column. I'm keeping reciving some error:
()-indexing must appear last in an index expression.
I would appreciate any help. Thanks!

 Risposta accettata

Cris LaPierre
Cris LaPierre il 16 Feb 2022
Modificato: Cris LaPierre il 16 Feb 2022
One observation is that your if statement conditional does not index a particular variable. Tell it which variable to look for "Manchester" in. If that data is in Var1, then your conditional should be
if MyTable.Var1(j) == "Manchester City"
elseif MyTable.Var1(j) == "Chelsea"
end

1 Commento

such a simple solution and somehow I could not find it... Thanks Cris.

Accedi per commentare.

Più risposte (0)

Categorie

Prodotti

Release

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by