如何调整我的R代码以实现此特定输出?

时间:2019-01-19 12:56:22

标签: r random

我在R中使用RStudio,并且具有以下现有的R代码,这些代码为我提供了3个random数字作为输出(2个odd和1 even)。

foo <- list(
c(1,2,3,5,6,7,8,9), 
c(11,13,15,16,17,19), 
c(21,25,28,29), 
c(31,33,34,35,37,38,40) 
)

 names(foo) <- c(2, 1, 0, 0)
 is.odd <- function(x) x %% 2 != 0

 countOdds<-function(dt){ sum(sapply(dt, is.odd)) }

while(T){
list2<- unlist(sapply(seq_along(foo), function(x) sample(foo[[x]], names(foo[x]))))
 if(countOdds(list2)==2)
break
}

sort(list2)

当前,在现有代码中,我可以指定以下内容:

  1. 上面显示的每4个列表的数字列表
  2. 每个列表中要提取的项目数
  3. 我需要的奇数/偶数组合的数量。

我想在我现有的R代码中添加以下附加条件:

  1. 能够指定需要输出的3个数字中的SUM的值 (即指定24,并且3个随机数之和必须为24)
  2. 输出3个数字的所有组合,这些数字的总和将为24(或我可能输入的任何其他数字)。目前,它只给我输出3个随机数。

可以将这两个条件添加到我现有的代码中吗?

0 个答案:

没有答案