Calc of mean and standard deviation

1 view (last 30 days)
Hi. I have
A = [1,-1,0,6,8,9]
B = [1,-2,0,-6,8,9]
C = [-2,-1,0,6,8,9]
How can I calc the mean of three of them (excluding NaN) std and plot them in one graph?
The result should look like the photo. Maybe this is elementary question but I'm still learning. Thanks.

Accepted Answer

Image Analyst
Image Analyst on 23 Jan 2020
Is this what you want:
A = [1,-1,0,6,8,9]
B = [1,-2,0,-6,8,9]
C = [-2,-1,0,6,8,9]
% Compute mean and std dev.
meanVec = mean([A; B; C], 'omitnan')
stdVec = std([A; B; C], 'omitnan')
% Plot everything
plot(A, 'r.-', 'LineWidth', 2, 'MarkerSize', 10);
hold on;
plot(B, 'g.-', 'LineWidth', 2, 'MarkerSize', 10);
plot(C, 'b.-', 'LineWidth', 2, 'MarkerSize', 10);
plot(meanVec, 'k.-', 'LineWidth', 2, 'MarkerSize', 10);
grid on;
legend('A', 'B', 'C', 'Mean', 'Location', 'northwest');
0000 Screenshot.png
  2 Comments
Kofial
Kofial on 23 Jan 2020
Yesss. Only with adding std in the plot as well. Thank you!
Image Analyst
Image Analyst on 24 Jan 2020
It's trivial to add it, and I expect you have already.
A = [1,-1,0,6,8,9]
B = [1,-2,0,-6,8,9]
C = [-2,-1,0,6,8,9]
% Compute mean and std dev.
meanVec = mean([A; B; C], 'omitnan')
stdVec = std([A; B; C], 'omitnan')
% Plot everything
plot(A, 'r.-', 'LineWidth', 2, 'MarkerSize', 10);
hold on;
plot(B, 'g.-', 'LineWidth', 2, 'MarkerSize', 10);
plot(C, 'b.-', 'LineWidth', 2, 'MarkerSize', 10);
plot(meanVec, 'k.-', 'LineWidth', 2, 'MarkerSize', 10);
plot(stdVec, 'm.-', 'LineWidth', 2, 'MarkerSize', 10);
grid on;
legend('A', 'B', 'C', 'Mean', 'Standard Deviation', 'Location', 'northwest');
0000 Screenshot.png

Sign in to comment.

More Answers (1)

John D'Errico
John D'Errico on 23 Jan 2020
Edited: John D'Errico on 23 Jan 2020
It should look like what photo? The mind reading toolbox has never gotten past beta testing state, and the copy I have is full of bugs.
Hint: create ONE matrix, that is 3x6. Now can you use the functions mean and std on the matrix?
This points out the flaw in creating multiple variables, when one array will suffice.
  3 Comments
John D'Errico
John D'Errico on 23 Jan 2020
Edited: John D'Errico on 23 Jan 2020
Please stop answering with something that is purely a comment. You never even attached a picture to your answer. You clearly know how to make a comment, since you made one. And you can attach a picture to a comment.
But if you even admit a matrix would be helpful, then TRY IT!!!!!!! Make some effort.
Kofial
Kofial on 23 Jan 2020
You don't have to be mean!!! Organizing in a matrix it's only the first step and doesn't help much for the total result. I can't visualize how to plot them. That's the most important.

Sign in to comment.

Products


Release

R2019a

Community Treasure Hunt

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

Start Hunting!