我有一个关于按组组合的问题。
我的迷你样本如下所示:
sample <- data.frame(
group=c("a","a","a","a","b","b","b"),
number=c(1,2,3,2,4,5,3)
)
如果我应用以下功能combn
对于数据框,它给出了以下结果,这是“数字”列下的所有值的组合,无论该值属于哪个组:
[,1] [,2]
[1,] 1 2
[2,] 1 3
[3,] 1 2
[4,] 1 4
[5,] 1 5
[6,] 1 3
[7,] 2 3
[8,] 2 2
[9,] 2 4
[10,] 2 5
[11,] 2 3
[12,] 3 2
[13,] 3 4
[14,] 3 5
[15,] 3 3
[16,] 2 4
[17,] 2 5
[18,] 2 3
[19,] 4 5
[20,] 4 3
[21,] 5 3
我用于上述结果的代码如下:
t(combn((sample$number), 2))
但是,我想获得组内的组合结果(即“a”,“b”)。因此,我想要得到的结果应该是这样的:
[,1] [,2] [,3]
[1,] a 1 2
[2,] a 1 3
[3,] a 1 2
[4,] a 2 3
[5,] a 2 2
[6,] a 3 2
[7,] b 4 5
[8,] b 4 3
[9,] b 5 3
除了组合之外,我还想得到指示的列
群组。