组合-问题:100个基因里面,任意选出两个配对有多少种情况?
方法1, 使用combn(x,n)
x这里指100个基因,注意这里x不等同于100,而是100个数字编号,所以 x=seq(1:100)
n表示任意选择配对的基因数目,2 所以 n=2
接下来,运行
combn(x,n)
结果好多,好多列。因为R把所以的俩俩配对(组合,这里不是排列)可能都给以矩阵形式列出来了。所以,
dim(combn(x,n))
就得到了行数和列数,
[1] 2 4950
所以,100个基因里面,任意选出两个配对有4959种情况。
方法2, 直接了当,choose(X, n)
这里X就是基因数目,X=100
n表示任意选择配对的基因数目,2 所以 n=2
choose(100,2)
得到
## [1] 4950
排列-问题:同样是刚刚的问题,一百个基因选出来两个的情况,但是如果这里要求先后顺序,可能情况的结果就要用排列方法计算。
阶乘:factorial(n) —— n!
排列数:choose(X,n) * factorial(n)
网友评论