tleonardi · GitHub

test <- data.frame( Name = c("a", "b","c", "d", "e"),
                    ID = c(1, 1, 1, 1, 1),
                    expression = c(NaN, NaN, NaN, NaN, NaN)
                  )
rep <- replicate( 5000, nrow(group_by(test, ID) %>% filter(min_rank(desc(expression))==1)))
table(rep)
>rep
>   1    2    5
>4654  345    1
sessionInfo()
R version 3.1.0 (2014-04-10)
Platform: x86_64-unknown-linux-gnu (64-bit)
locale:
 [1] LC_CTYPE=en_GB.UTF-8       LC_NUMERIC=C               LC_TIME=en_GB.UTF-8        LC_COLLATE=en_GB.UTF-8     LC_MONETARY=en_GB.UTF-8    LC_MESSAGES=en_GB.UTF-8    LC_PAPER=en_GB.UTF-8       LC_NAME=C                  LC_ADDRESS=C               LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_GB.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base
other attached packages:
[1] dplyr_0.3.0.2
loaded via a namespace (and not attached):
[1] assertthat_0.1 DBI_0.3.1      lazyeval_0.1.9 magrittr_1.0.1 parallel_3.1.0 Rcpp_0.11.3    tools_3.1.0

Read the original on github.com ↗