Effacer les filtres
Effacer les filtres

Help regarding For loop

1 vue (au cours des 30 derniers jours)
Md. Tanjin Amin
Md. Tanjin Amin le 8 Juil 2017
Commenté : Walter Roberson le 10 Juil 2017
hi,
i want to write the following equation in a for loop to store values for 1000 rows..Can anyone help please?
z(k)=lamda*x(k)+(1-lamda)*z(k-1)

Réponse acceptée

Jan
Jan le 8 Juil 2017
z = zeros(1000, 22);
x = rand(1000, 22);
lamda = rand();
for k = 2 : 1000
z(k, :) = lamda * x(k, :) + (1-lamda) * z(k-1, :);
end
  4 commentaires
Md. Tanjin Amin
Md. Tanjin Amin le 10 Juil 2017
Hi, I am sorry. You are right the expected values were wrong. I have attached the corrected expected values. This is right this time. Can you give some time and help please?
Walter Roberson
Walter Roberson le 10 Juil 2017
Your first two lines of X from X.mat are the same. That cannot be explained with any lamda other than 0 .
Your other lines of expected output cannot be explained with lamda = 0.03 : they all require lamda = 1.0003
Even then your expected outputs are frequently wrong in the 4th digit.
See attached, which is configured for 1.0003

Connectez-vous pour commenter.

Plus de réponses (1)

Walter Roberson
Walter Roberson le 8 Juil 2017
z(1) = rand();
x = randn(1,1000);
lamda = rand();
for k = 2 : 1000
z(k)=lamda*x(k)+(1-lamda)*z(k-1);
end
  1 commentaire
Md. Tanjin Amin
Md. Tanjin Amin le 8 Juil 2017
Hi, Thank you. Atually, I should have been more specific. X is 1000*22 matrix and initial value of Z is zero (a 1*22 zero matrix)..Can you help please?

Connectez-vous pour commenter.

Catégories

En savoir plus sur MATLAB 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!

Translated by