How to generate random numbers with sequence in R

I need to generate random numbers from 20 to 50 in 5 increments. For example, the numbers should be 20, 25, 30, 25, 50, 45, etc. The difference between the numbers should be 5.

I tried this:

x<-floor(runif(50,20,50)) 

this gives me any number from 20 to 50. Is there an easy way to do this in R?

+4
source share
2 answers

I think Arun had in mind the following:

 set.seed(123) sample(seq(from = 20, to = 50, by = 5), size = 50, replace = TRUE) # [1] 30 45 30 50 50 20 35 50 35 35 50 35 40 40 20 50 25 20 30 50 50 40 40 50 40 # [26] 40 35 40 30 25 50 50 40 45 20 35 45 25 30 25 20 30 30 30 25 20 25 35 25 50 
+12
source

Very similar to your source code, but dividing and multiplying by 5 to get rounding to 5 is not 1.

 floor(runif(50,20,50)/5)*5 [1] 45 30 45 35 45 35 25 30 35 40 20 45 25 30 25 40 30 40 40 40 20 30 30 40 35 30 25 45 25 20 45 20 35 35 30 20 20 20 20 35 35 45 45 45 45 20 [47] 45 40 40 20 
0
source

Source: https://habr.com/ru/post/1479179/


All Articles