I am given an array

3 views (last 30 days)
Diego Rosendo Pérez
Diego Rosendo Pérez on 30 Nov 2021
Edited: Stephen23 on 6 Dec 2021
Thank you very much in advance.
a = [3 4 5 3 64 7 6 34 8 5 4 3];
  1 Comment
Stephen23
Stephen23 on 6 Dec 2021
Edited: Stephen23 on 6 Dec 2021
Original question by Diego Rosendo Pérez retrieved from Google Cache:
I am given an array with different numbers and I have to compute the same array but with some values changed.
Hi, as you can see I am gven an initial array "a" and I have to create the code to return the same array but with some values changed according to some requirements I have to meet. Now, I have the values and their index but just do not know how to finish the exercise; I think that I need to use a for loop but I just do not know how to code the last line so that I obtain the same array "a" but with some values changed. Thank you very much in advance.
a = [3 4 5 3 64 7 6 34 8 5 4 3];
m = mean(a);
st = std(a);
an = abs(a - m) > st;
ind = find(an);

Sign in to comment.

Answers (1)

Yongjian Feng
Yongjian Feng on 30 Nov 2021
Do you mean:
a = [3 4 5 3 64 7 6 34 8 5 4 3];
m = mean(a);
st = std(a);
an = abs(a - m) > st;
ind = find(an);
a(ind) = an(ind)
  1 Comment
Yongjian Feng
Yongjian Feng on 30 Nov 2021
Edited: Yongjian Feng on 30 Nov 2021
This one?
a = [3 4 5 3 64 7 6 34 8 5 4 3];
m = mean(a);
st = std(a);
an = abs(a - m) > st;
ind = find(an);
a(ind) = 4 % replace all the meet the requirements with 4

Sign in to comment.

Categories

Find more on Color and Styling in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!