Try this indeed replace(replace(x, x == 1, sample(0:1, sum(x == 1), rep = TRUE)), x == 2, 1)
On Tue, Dec 28, 2010 at 3:14 PM, M.Ribeiro <mresende...@yahoo.com.br> wrote: > > Hi Henrique, > Thanks for the fast answer, > The only problem in your code, which I think I didn't mention in my message > is that I would like one different random sampling procedure for each 1 in > my vector > > The way it was written, it samples only once and replace by every 1: > > x = as.matrix(c(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1)) > > replace(replace(x, x == 1, sample(0:1, 1)), x == 2, 1) > [,1] > [1,] 1 > [2,] 1 > [3,] 1 > [4,] 1 > [5,] 1 > [6,] 1 > [7,] 1 > [8,] 1 > [9,] 1 > [10,] 1 > [11,] 1 > [12,] 1 > [13,] 1 > [14,] 1 > [15,] 1 > > Thanks > > -- > View this message in context: > http://r.789695.n4.nabble.com/Faster-way-to-do-it-using-apply-tp3166161p3166203.html > Sent from the R help mailing list archive at Nabble.com. > > ______________________________________________ > R-help@r-project.org mailing list > 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. > -- Henrique Dallazuanna Curitiba-Paraná-Brasil 25° 25' 40" S 49° 16' 22" O [[alternative HTML version deleted]]
______________________________________________ R-help@r-project.org mailing list 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.