Modifying elements in a list

8 visualizzazioni (ultimi 30 giorni)
Jensen
Jensen il 25 Mar 2019
Risposto: Star Strider il 25 Mar 2019
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

Risposta accettata

Star Strider
Star Strider il 25 Mar 2019
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.

Più risposte (0)

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Prodotti


Release

R2017a

Community Treasure Hunt

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

Start Hunting!

Translated by