Hi: It's unclear what you want for your vector of probabilities, but here's one approach:
u$p <- runif(1000) # generate a random vector of success probabilities samp <- function(x) { p <- as.numeric(x[3]) # x will be character as constructed, pick out the numeric value of p x[sample(c(1, 2), 1, prob = c(p, 1 - p))] # randomly sample first or second element } # Apply function samp to each row of the data frame u$V3 <- apply(u, 1, samp) u$p <- NULL # get rid of the probability vector head(u) You weren't clear about how you wanted to select the success probabilities of each element in each row, so I just generated them randomly. Adapt to your situation. HTH, Dennis On Mon, Mar 21, 2011 at 10:43 AM, Lisa <lisa...@gmail.com> wrote: > Hi, everybody, > > I have a problem and need your help. > There are two columns that look like this: > > [1,] "t" "f" > [2,] "f" "t" > [3,] "t" "f" > [4,] "t" "t" > [5,] "f" "f" > > I just want to generate the third column based on these two columns. First, > I randomly choose one of the two columns, say, the first column. So, the > first character of the third column is t that looks like this: > > [1,] "t" "f" "t" > [2,] "f" "t" > [3,] "t" "f" > [4,] "t" "t" > [5,] "f" "f" > > Second, I determine the second character of the third column with an > additional Bernoulli trial with a probability, for example, rbinom(1, 1, > 0.3). If the random generation in R is 0, we keep "f", the second character > in the first column because the first column has been chosen in the first > step, while if the random generation in R is 1, we choose "t" instead, the > second character in the second column. > > Third, I determine the third character of the third column with a Bernoulli > trial but a different probability, for example, rbinom(1, 1, 0.7). > > Repeat these processes > > How can I do this efficiently if there are more than thousand records > (rows)? Can anybody please help how to get this done? Thanks a lot in > advance > > Lisa > > > > -- > View this message in context: > http://r.789695.n4.nabble.com/Randomly-generating-data-tp3394250p3394250.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. > [[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.