hello I m having a problem filling a table
let's say I have a table
a c
1
4
10
11
...
n
I want c to be the mean of a starting from 1 to n
for example
c(1) = 1
c(2) =1+4 / 2
c(3) = 1+4+10 / 3
c(4)=1+4+10+11 / 4
... n
how do I fill c using a loop ?
thank you

 Réponse acceptée

Adam Danz
Adam Danz le 20 Mai 2019
Modifié(e) : Adam Danz le 20 Mai 2019
No-loop method
There's no need for a loop.
b = cumsum(a)./(1:length(a));
Loop method
If you must use a loop...
b = zeros(size(a));
for i = 1:length(a)
b(i) = sum(a(1:i))/i;
end
If you want that in a table,
t = table(a',b','VariableNames',{'a','b'});

Plus de réponses (1)

Catégories

Produits

Version

R2016a

Community Treasure Hunt

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

Start Hunting!

Translated by