美文网首页
R统计:排列组合

R统计:排列组合

作者: 胡童远 | 来源:发表于2020-10-28 15:43 被阅读0次

    导读

    排列数:
    从n个不同元素中取出m(m≤n)个元素的所有不同排列的个数。
    组合数:
    从n个不同元素中取出m(m≤n)个元素的所有不同组合的个数。

    一、组合

    1 组合数公式

    2 R展示所有组合

    combn(1:5, 3)
    

    3 R计算组合数

    choose(5, 3)
    

    二、排列

    1 排列数公式

    2 二者关系

    只差一个m!

    3 R计算排列数

    先算阶乘

    # 计算m阶乘
    factorial(3)
    

    再算排列数=组合数*m!

    choose(5, 3) * factorial(3)
    

    三、n个数中取任意个数的组合

    1 函数

    yield_combine <- function(vec){
      vec <- sort(vec)
      out_list <- list()
      index <- 1
      for(i in 1:length(vec)){
        sub_com <- combn(vec, i)
        for(j in 1:ncol(sub_com)){
          out_list[[index]] <- sub_com[, j]
          index = index +1
        }
      }
      return(out_list)
    }
    

    2 三个数中取任意个数组合

    yield_combine(1:3)
    

    参考:
    排列组合的一些公式及推导(非常详细易懂)

    相关文章

      网友评论

          本文标题:R统计:排列组合

          本文链接:https://www.haomeiwen.com/subject/vzaqvktx.html