Modifying elements in a list

8 ビュー (過去 30 日間)
Jensen
Jensen 2019 年 3 月 25 日
回答済み: Star Strider 2019 年 3 月 25 日
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

採用された回答

Star Strider
Star Strider 2019 年 3 月 25 日
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.

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

製品


リリース

R2017a

Community Treasure Hunt

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

Start Hunting!

Translated by