I am given an array

2 次查看(过去 30 天)
Diego Rosendo Pérez
编辑: Stephen23 2021-12-6
Thank you very much in advance.
a = [3 4 5 3 64 7 6 34 8 5 4 3];
  1 个评论
Stephen23
Stephen23 2021-12-6
编辑:Stephen23 2021-12-6
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);

请先登录,再进行评论。

回答(1 个)

Yongjian Feng
Yongjian Feng 2021-11-30
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 个评论
Yongjian Feng
Yongjian Feng 2021-11-30
编辑:Yongjian Feng 2021-11-30
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

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by