Speed up for loop
古いコメントを表示
I need to speed up this code, T is a table with 5 columns and approximately 1 million rows. The code is doing what I need but it is pretty slow, it takes 1 hour to do the calculation. Someone can help?
Thanks in advance
rmsA = zeros(height(T),1);
for i=1:height(T)
tf = isbetween(T.VarName1,T.VarName(i)-minutes(2),T.VarName(i)+minutes(2));
xA = T.VarName2(tf);
rmsA(i) = rms((xA-993)/102.04);
end
2 件のコメント
BALAJI KARTHEEK
2020 年 4 月 23 日
Use parallel computing and parfor loops are available in matlab exactly to solve these type of problems
darova
2020 年 4 月 23 日
Can you attach sample data for experiments?
回答 (1 件)
Sulaymon Eshkabilov
2020 年 4 月 23 日
1 投票
To process date data format is slow. Thus, you can convert all into a serial date number using datenum() that shall speed up the simulation process.
good luck
2 件のコメント
Emiliano Ascenzi
2020 年 4 月 24 日
Med Aymane Ahajjam
2021 年 7 月 28 日
treat them like you would with normal numbers : .. < .. < ..
カテゴリ
ヘルプ センター および File Exchange で Dates and Time についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!