Modifying elements in a list

I am trying to change the type of the elements in my 1-dimensional matrix from string type to number type using str2double, and modifying the previous value at that position to have the number instead of the string. For some reason when I run my code it isnt working. How should I approach this to make it work? I need to have these values as numbers for future computations.
times = ["758" "808" "828" "838" "848" "858" "908"]
for num = 1 : length(times)
times(1,num) = str2double(times(1,num)) ;
end

 Respuesta aceptada

Star Strider
Star Strider el 25 de Mzo. de 2019

1 voto

You do not need the loop.
Just do this:
timestr = ["758" "808" "828" "838" "848" "858" "908"]
timenum = str2double(timestr)
Note that times (link) is actually a MATLAB function for doing element-wise multiplication. Naming variables to be the same as MATLAB functions is called ‘overshadowing’. The times function will not do what you intend if you call it after overshadowing it, so I changed your vector names to avoid that.

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements en Centro de ayuda y File Exchange.

Productos

Versión

R2017a

Preguntada:

el 25 de Mzo. de 2019

Respondida:

el 25 de Mzo. de 2019

Community Treasure Hunt

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

Start Hunting!

Translated by