Plot 10 times and take the average

Hello,
users = [10 20 30 40 50];
rates = [];
for i = 1 : length(users)
rates = [rates Function(users(i))];
end
figure(3)
plot(users,rates)
I have this code that calls another function 'Function' This function calculates the rates that i want to plot, but what i want to do is that for 10 users i want to plot the rates for 10 times and take the average and plot, the same goes with the 20, 30, 40 and 50 users. I want to plot every element in the array 'users' versus 'rates' which is calculated in another function 10 times and take the average of every 10 times and put the result of the 5 elements in a plot. Can anyone help?
Thank you :)

Réponses (1)

Jos (10584)
Jos (10584) le 24 Mar 2016
users = [10 20 30 40 50];
N = numel(users) ;
rates = zeros(1,N) ; % pre_allocation
for i = 1 : N
tempV = MyFunction(users(i)) ; % assuming V is vector of 10 elements?
rates(i) = mean(tempV)
end
plot(users,rates,'bo')

4 commentaires

N.
N. le 24 Mar 2016
I don't understand the tempV! Where is it initialized?
N.
N. le 24 Mar 2016
I want to make sure that you understand what i want to do! It's like i will loop on my Function 10 times for every element and get the average for every element in the users array
Jos (10584)
Jos (10584) le 24 Mar 2016
Does MyFunction(x) return a single number or a vector of 10 numbers?
You can create an inner loop:
for i = ...
tempV = zeros(1,10) ;
for k = 1:10
tempV(k) = MyFunction(users(i))
end
rates(i) = mean(tempV)
end

Connectez-vous pour commenter.

Catégories

En savoir plus sur Loops and Conditional Statements dans Centre d'aide et File Exchange

Tags

Aucun tag saisi pour le moment.

Question posée :

N.
le 24 Mar 2016

Modifié(e) :

N.
le 26 Mar 2016

Community Treasure Hunt

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

Start Hunting!

Translated by