Dear friends,
If I have a table like this, first row A B C D ... are different
levels of the variable, first column 0 1 2 4 ... are the levels of the
"numbers", the numbers inside the table are the probabilities of the
"number" occuring.
A B C D ...
0 0.2 0.3 0.1 0.05
1 0.1 0.1 0.2 0.2
2 0.02 0.2 0 0.1
4 0.3 0.01 0.01 0.4
...
How can I use R to do the simulation and get a table like this, first
row A B C D ... are different levels of the variable, the numbers
inside the table are the "numbers" simulated from the probailties
table above?
A B C D ...
0 4 2 0
2 2 0 1
0 1 4 1
2 2 0 0
...
Thanks for help!
Kelvin
Simulation numbers from a probability table
3 messages · Kelvin, Tal Galili, Peter Ehlers
An embedded and charset-unspecified text was scrubbed... Name: not available URL: <https://stat.ethz.ch/pipermail/r-help/attachments/20100113/bcae65ae/attachment.pl>
Try this:
dat <- data.frame(x=11:14, pa=1:4/10, pb=4:1/10)
f <- function(numreps, data){
pmat <- as.matrix(data[-1])
x <- data[,1]
result <- matrix(0, nrow=numreps, ncol=ncol(pmat))
colnames(result) <- c("A", "B")
for(i in seq_len(numreps)){
result[i,] <- apply(pmat, 2, function(p) sample(x, 1, prob=p))
}
result
}
f(5, dat)
-Peter Ehlers
Kelvin wrote:
Dear friends,
If I have a table like this, first row A B C D ... are different
levels of the variable, first column 0 1 2 4 ... are the levels of the
"numbers", the numbers inside the table are the probabilities of the
"number" occuring.
A B C D ...
0 0.2 0.3 0.1 0.05
1 0.1 0.1 0.2 0.2
2 0.02 0.2 0 0.1
4 0.3 0.01 0.01 0.4
...
How can I use R to do the simulation and get a table like this, first
row A B C D ... are different levels of the variable, the numbers
inside the table are the "numbers" simulated from the probailties
table above?
A B C D ...
0 4 2 0
2 2 0 1
0 1 4 1
2 2 0 0
...
Thanks for help!
Kelvin
______________________________________________ R-help at 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.
Peter Ehlers University of Calgary 403.202.3921