我的代码
b(abs(b(1:3:length(b))) > 0.75) = 0.75
它应该做什么:
b1 = b(1:3:end);
b1(abs(b1)>0.75) = 0.75;
b(1:3:end) = b1;
这两个怎么不一样?
答案 0 :(得分:0)
索引部分b(1:3:end)
会返回零和1的短向量,因此只会更改i
的{{1}}个条目(第一个为b
如果i
条目的绝对值大于b
,则0.75
)为3*i + 1
。
例如:
0.75
将返回
b = [-0.684; 0.941; 0.914; -0.029; 0.6; -0.716; -0.156; 0.831; 0.584; 0.919];
b_index = abs(b(1:3:length(b)))>0.75
和b_index =
0
0
0
1
会将b(b_index) = 0.75
的第4个条目更改为b
。
将此作为单线程的一种方法是
0.75
但我认为三线更清晰。