Iterate values into array

6 vues (au cours des 30 derniers jours)
Edward Robson
Edward Robson le 2 Nov 2020
Commenté : Peter Perkins le 20 Nov 2020
Hi folks,
I have this data,
time = tbl.time;
Vv1 = tbl.Vv1;
Vv2 = tbl.Vv2;
IR6 = tbl.IR6;
f = [];
R = [];
Ratio = [];
L=[];
M=[];
for x = 3:height(Vv1)
G = tbl.Vv2(x)/tbl.IR6(x);
R(x) =[G];
Ratio = R(x);
end
xold=1
for i=1:length(Ratio);
xnew = ((xold-xold^2)*Ratio(i)) ;
L(i)=xnew;
M(i)=xold;
xold=xnew;
end
but for some reason each iteration of xnew and xold arent added to L or M ?
  3 commentaires
KSSV
KSSV le 2 Nov 2020
xold=1
for i=1:length(Ratio);
xnew = ((xold-xold^2)*Ratio(i)) ;
The above line gives xnew as zero.....this what you want? You need to rethink on your logic.
for x = 3:height(Vv1)
G = tbl.Vv2(x)/tbl.IR6(x);
R(x) =[G];
Ratio = R(x);
end
The above lines, you need not to use loop.
Peter Perkins
Peter Perkins le 20 Nov 2020
I don't think either of these loops is necessary. Edward, you should try to rewrite your code with vectorixed operations, it will be faster, shorter, easier to read, and easier to debug.

Connectez-vous pour commenter.

Réponses (0)

Catégories

En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by