这是一个非常具体的问题;所以我只是告诉你我在处理什么:向具有特定值的矩阵元素添加噪音
我有一个巨大的矩阵2列 - 第1列是指时间,第2列的分子浓度。 分子信号是人造的,这就是为什么基线是平坦的(图片)。在现实中它应该有点嘈杂
因此,我想增加一个正常分布的噪音; 其实我已经量化具有此基准值的元素:
:numb=length(App[,2][App[,2]==min(App[,2])])
noise=rnorm(numb)
我在加入这个随机噪声的元素
App[,2]==min(App[,2])
我尝试过的,如果环正挣扎
if(App[,2]==min(App[,2])) {
App[,2]=App[,2]=+noise
}
但由于某种原因,它不起作用。 (错误“In if(App [,1] == min(App [,1])){: 条件长度> 1且仅使用第一个元素)
?!我
最良好的祝愿,并感谢
也许这'程式[应用[2] ==分钟(应用[2]), 2] = App [App [,2] == min(App [,2])],2] + noise' –
如果有必要,下面是错误的解释:App [,1]'是长度'> 1'(比如说'n'),'min(App [,1])'是一个长度为1的向量。当用'=='比较两个向量时,返回的结果(称为“ret”)是一个长度为“n”的向量。由于'if'不知道如何处理这个向量,所以如果'App [1,1] == min(App [,1]'是'true',则if'条件是满意,反之亦然,但是,你可以使用'ret'来索引'App'并继续。 –