?rnorm tells you that n, the first argument, is the number of observations/random numbers you wish to generate. You asked for 1. So you need to ask for the number of 0's, something like:
> a <- matrix(rep(0:1, 3), nrow =3) > a [,1] [,2] [1,] 0 1 [2,] 1 0 [3,] 0 1 > a[!a] <- rnorm(sum(!a), 1,.1) > a [,1] [,2] [1,] 0.8136788 1.000000 [2,] 1.0000000 1.146225 [3,] 0.9081908 1.000000 Bert Bert Gunter "The trouble with having an open mind is that people keep coming along and sticking things into it." -- Opus (aka Berkeley Breathed in his "Bloom County" comic strip ) On Fri, Jan 8, 2021 at 2:33 PM Yuan Chun Ding <ycd...@coh.org> wrote: > Hi R users, > > I am analyzing miRNA sequence data for a special network analysis, I need > to replace zero values in a matrix as random numbers with mean of 1 and > standard deviation of 0.1. > > er.miRCounts[er.miRCounts==0] <- rnorm(1,mean=1, sd=0.1); > > this code made all zero values as 1.13, not random numbers across > different zero values. If all zero values in one row are replaced by the > same 1.13, then sd in that row is zero, causing other problem in the > following calculation. > > Can you help me? > > Thank you, > > Yuan chun Ding > > ---------------------------------------------------------------------- > ------------------------------------------------------------ > -SECURITY/CONFIDENTIALITY WARNING- > > This message and any attachments are intended solely for the individual or > entity to which they are addressed. This communication may contain > information that is privileged, confidential, or exempt from disclosure > under applicable law (e.g., personal health information, research data, > financial information). Because this e-mail has been sent without > encryption, individuals other than the intended recipient may be able to > view the information, forward it to others or tamper with the information > without the knowledge or consent of the sender. If you are not the intended > recipient, or the employee or person responsible for delivering the message > to the intended recipient, any dissemination, distribution or copying of > the communication is strictly prohibited. If you received the communication > in error, please notify the sender immediately by replying to this message > and deleting the message and any accompanying files from your system. If, > due to the security risks, you do not wish to receive further > communications via e-mail, please reply to this message and inform the > sender that you do not wish to receive further e-mail from the sender. > (LCP301) > > ______________________________________________ > R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide > http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. > [[alternative HTML version deleted]] ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.