Calculating an average if specific condition is fulfilled
Show older comments
Hello everybody,
I am working on my own project right now and needing some help now.
What do I want to do?
Matlab should calculate the average out of values for a specific time period.
time (sec) value
0 2
1 3
2 4
3 6
4 7
5 8
6 2
If time is >0 and smaller or equal to 3 sec Matlab should calculate the arithmetic average of the values.
So basically something like this:
IF 0>=time>=3
Do arithmetic average of value
So the result should be (2+3+4+6 )/4 =3,75.
It is my first project with MatLab and I am usually working with other programms.
Thanks for your help.
Your sincerely,
Max
Answers (1)
madhan ravi
on 6 May 2019
Edited: madhan ravi
on 6 May 2019
1 vote
https://in.mathworks.com/company/newsletters/articles/matrix-indexing-in-matlab.html - read the topic logical indexing once you understand that use mean() after that process.
I also suggest you to do MATLAB on-ramp course.
6 Comments
Max Behr
on 6 May 2019
madhan ravi
on 7 May 2019
https://matlabacademy.mathworks.com - do this course, only takes a couple of hours (so that you don't have to depend on anyone often).
Don't name your variables dynamically see https://in.mathworks.com/matlabcentral/answers/304528-tutorial-why-variables-should-not-be-named-dynamically-eval to know why. Use a cell array for intance:
time=cell(2,1);
time{1}=...
time{2}=...
Max Behr
on 7 May 2019
madhan ravi
on 7 May 2019
Experiment and get back.
Max Behr
on 7 May 2019
madhan ravi
on 9 May 2019
time=cell(2,1);
time{1} =[ 1 2 3 ]
time{2} =[ 1 2 3 4 5 ]
Categories
Find more on Get Started with MATLAB in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!