plotting an array of doubles

4 visualizzazioni (ultimi 30 giorni)
ksew ksew
ksew ksew il 5 Apr 2013
im trying to plot an array with length of (5001 x 101 double) and need to store then in another array. I am using the following code to do so however only 1 values is being stored what im doing wrong
% code
for n =1:1:5001
snr1 = rms(input(n))/ rms(out(n));
end
end

Risposte (3)

Azzi Abdelmalek
Azzi Abdelmalek il 5 Apr 2013
  2 Commenti
ksew ksew
ksew ksew il 5 Apr 2013
Modificato: Azzi Abdelmalek il 5 Apr 2013
i did this still nothing works
for n =1:1:5001
snr1(i) = rms(input(n))/ rms(out(n));
end
Azzi Abdelmalek
Azzi Abdelmalek il 5 Apr 2013
Modificato: Azzi Abdelmalek il 5 Apr 2013
In your case, the counter is n not i then use
snr1(n)

Accedi per commentare.


Carlos
Carlos il 5 Apr 2013
He means that you should do
for n =1:1:5001
snr1(n) = rms(input(n))/ rms(out(n));
end

Jan
Jan il 5 Apr 2013
The suggested methods might work partially only, and this means, that they fail. You want a "5001 x 101 double" array, such that I guess the right hand side replies an [1 x 101] vector. Then:
snr1 = zeros(5001, 101); % Pre-allocate for speed!!!
for n = 1:5001
snr1(n, :) = rms(input(n)) / rms(out(n));
end
Using "input" as name of a variable has the disadvantage, that it shadows the built-in function with the same name. Such shadowing causes unexpected troubles frequently.

Categorie

Scopri di più su Loops and Conditional Statements in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by