KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
How would I efficiently go about taking a 1-by-1 ascending random sample of the values 1:n, making sure that each of the randomly sampled values is always higher than the previous value? e.g.: For the values 1:100, get a random number, say which is 61. (current list=61) Then pick another number between 62 and 100, say which is 90 (current list=61,90) Then pick another number between 91 and 100, say which is 100. Stop the process as the max value has been hit (final list=61,90,100) I have been stuck in loop land, thinking in this clunky manner: a1 <- sample(1:100,1) if(a1 < 100) { a2 <- sample((a+1):100,1) } etc etc... I want to report a final vector being the concatenation of a1,a2,a(n): result <- c(a1,a2) Even though this sounds like a homework question, it is not. I thankfully left the days of homework many years ago.
Tags (comma-separated)
Save Edits
Cancel