reading data in loop
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I have some problem with reading data in loop
cx_sum(Q) and cy_sum(Q) are not working in loop.
cx_sum and cy_sum have value 1x1622.
for Q = 1:1621
CY_sum99 = mean(cy_sum(Q),'omitnan')
CX_sum99 = mean(cx_sum(Q),'omitnan')
end
So can you solve this problem? Thank you
0 commentaires
Réponse acceptée
dpb
le 20 Juil 2022
But they are .. just that cy_sum(Q) is the single element of the array on each pass and the mean of a single number is the number and so the last computed value at the end of the loop is the last element of each array (if not NaN) .
You're looking for simply writing
CY_mn=mean(cy_sum,'omitnan');
CX_mn=mean(cx_sum,'omitnan');
probably...but that's guessing.
3 commentaires
dpb
le 20 Juil 2022
Modifié(e) : dpb
le 20 Juil 2022
No, you don't want the loop still -- you want to sub-reference the portion of the array desired.
That would be
Nlower=1; % programming practice -- don't bury "magic" numbers in code;
Nupper=270; % use variables that can change
CX_mn_UL=mean(cx_sum(Nlower:Nupper),'omintnan');
It doesn't matter over what elements you loop, the above computes the same result as the mean 270 times since you reference the full variable inside the loop.
I strongly recommend spending time reading the "Getting Started" tutorial section in the local documentation on MATLAB syntax and referencing arrays, etc., ...
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Logical dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!