如果向量在R中包含重复的元素,如何找到唯一的排列?
我们可以使用combinat包中的permn函数来查找排列,但是如果向量中有重复的元素,则结果将不会具有唯一的排列,因此,我们需要与permn函数一起使用唯一的函数。例如,如果我们有一个向量1、2、1,那么排列将是(1 2 1),(1 1 2),(1 1 2),(1 2 1),(2 1 1),(2 1 1),唯一的排列将是(1 2 1),(1 1 2),(2 1 1)。
示例
x1<-c(1,2,1,2)x1
输出结果
[1] 1 2 1 2
找到所有排列-
烫发(x1)
[[1]][1] 1 2 1 2
[[2]]
[1] 1 2 2 1
[[3]]
[1] 1 2 2 1
[[4]]
[1] 2 1 2 1
[[5]]
[1] 2 1 1 2
[[6]]
[1] 1 2 1 2
[[7]]
[1] 1 1 2 2
[[8]]
[1] 1 1 2 2
[[9]]
[1] 1 1 2 2
[[10]]
[1] 1 1 2 2
[[11]]
[1] 1 2 1 2
[[12]]
[1] 2 1 1 2
[[13]]
[1] 2 1 2 1
[[14]]
[1] 1 2 2 1
[[15]]
[1] 1 2 2 1
[[16]]
[1] 1 2 1 2
[[17]]
[1] 2 1 1 2
[[18]]
[1] 2 1 2 1
[[19]]
[1] 2 2 1 1
[[20]]
[1] 2 2 1 1
[[21]]
[1] 2 2 1 1
[[22]]
[1] 2 2 1 1
[[23]]
[1] 2 1 2 1
[[24]]
[1] 2 1 1 2
找到唯一的排列-
唯一的(permn(x1))
[[1]][1] 1 2 1 2
[[2]]
[1] 1 2 2 1
[[3]]
[1] 2 1 2 1
[[4]]
[1] 2 1 1 2
[[5]]
[1] 1 1 2 2
[[6]]
[1] 2 2 1 1
示例
x2 <-c(0,1,0)位数(x2)
[[1]][1] 0 1 0
[[2]]
[1] 0 0 1
[[3]]
[1] 0 0 1
[[4]]
[1] 0 1 0
[[5]]
[1] 1 0 0
[[6]]
[1] 1 0 0
唯一的(permn(x2))
[[1]][1] 0 1 0
[[2]]
[1] 0 0 1
[[3]]
[1] 1 0 0
以上是 如果向量在R中包含重复的元素,如何找到唯一的排列? 的全部内容, 来源链接: utcz.com/z/350164.html