Number of permutations
npermutations(x = NULL, k = NULL, n = NULL, v = NULL, freq = NULL, replace = FALSE, bigz = FALSE)
x | an integer or a vector, will be treated as |
---|---|
k | an integer, the number of items drawn, defaults to |
n | an integer, the total number of items, its value may be implicitly deduced from |
v | a vector to be drawn, defaults to |
freq | an integer vector of item repeat frequencies |
replace | an logical to draw items with replacement |
bigz | an logical to use gmp::bigz |
permutations for generating all permutations and ipermutations for iterating permutations
npermutations(7)#> [1] 5040npermutations(LETTERS[1:5])#> [1] 120npermutations(5, 2)#> [1] 20npermutations(LETTERS, k = 5)#> [1] 7893600# integer overflow if (FALSE) npermutations(14, 10) npermutations(14, 10, bigz = TRUE)#> Big Integer ('bigz') : #> [1] 3632428800# number of permutations of `c("a", "b", "b")` # they are `c("a", "b")`, `c("b", "b")` and `c("b", "b")` npermutations(k = 2, freq = c(1, 2))#> [1] 3# zero sized partitions npermutations(0)#> [1] 1npermutations(5, 0)#> [1] 1npermutations(5, 6)#> [1] 0npermutations(0, 1)#> [1] 0npermutations(0, 0)#> [1] 1