for loops for two variables (not nested loop)
3 views (last 30 days)
Show older comments
I've a .dat file with 73280 length. i'm trying to find mean of first 100 values, then mean of 101 to 200 values, then 201 to 300 and so on until last 100 values. 1st error i got was "Index exceeds matrix dimensions." I rounded off the length to 73200 and got rid of this problem.
x = [];
y = rms (a1,100); %a1 is original data
b= length(y);
c= b/100;
for i =1:100:b
x= [mean(y(i:i+99))]
end
subplot (2,2,1); plot (t1, a1)
subplot (2,2,2); plot (x)
subplot (2,2,3); plot (t1,y)
the value of "x" is updating in every iteration. what i want is to store the every value of "x" and then plot it.
Accepted Answer
Stephen23
on 30 Nov 2017
A loop is not required. Just use reshape. Then you can plot them all at one too!
>> N = 100;
>> V = rand(1,73280); % your data vector
>> Z = N*fix(numel(V)/N);
>> M = mean(reshape(V(1:Z),N,[]),1);
>> plot(M)
More Answers (1)
See Also
Categories
Find more on Annotations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!