如何创建一个3的倍数并在特定范围之间的数字列表?

时间:2018-05-19 10:22:16

标签: r random

我是R的新手,非常感谢您对此两步任务的任何帮助。

我需要编写R代码来创建一个数字列表,这些数字是31之间40的多个数字。

第二部分需要代码从上面的列表中随机选择6个数字。

2 个答案:

答案 0 :(得分:3)

使用3生成seq试用by=3的数字倍数。然后使用sample从该序列中挑选6个随机样本。我使用set.seed(1)来获得固定输出:

set.seed(1)
sample(seq(3,40,by=3), 6)
#[1] 12 15 21 30  6 24

答案 1 :(得分:1)

这是一个循序渐进的解决方案:

# 1. List of numbers between 1 and 40
list_numbers <- seq(1:40)

# 2. Filter
list_filter <- sapply(list_numbers, function(x) {x %% 3 == 0})

# 3. List of numbers multiple 3
list_numbers_multiple_3 <- list_numbers[list_filter]

# 4. Select 6 random numbers
sample(list_numbers_multiple_3, 6)