Как рассчитать комбинацию и перестановку в R?

Я только начал изучать Вероятность, и я ищу инструменты для работы с linux.

Я нашел несколько пакетов Комбинаций http://rss.acs.unt.edu/Rdoc/library/Combinations/html/00Index.html, но когда я попытался их установить, процесс завершился следующим сообщением:

> install.packages("Combinations")
Installing package(s) into ‘/home/maxim/R/x86_64-pc-linux-gnu-library/2.13’
(as ‘lib’ is unspecified)
Warning message:
In getDependencies(pkgs, dependencies, available, lib) :
  package ‘Combinations’ is not available (for R version 2.13.1)

Ответ 1

Вы можете использовать пакет combinat с R 2.13:

install.packages("combinat")
require(combinat)
permn(3)
combn(3, 2)

Если вы хотите узнать количество комбинаций/перестановок, проверьте размер результата, например:

length(permn(3))
dim(combn(3,2))[2]

Ответ 2

Если вы не хотите, чтобы ваш код зависел от других пакетов, вы всегда можете просто написать эти функции:

perm = function(n, x) {
  factorial(n) / factorial(n-x)
}

comb = function(n, x) {
  factorial(n) / factorial(n-x) / factorial(x)
}

Ответ 3

Функция combn находится в стандартном пакете utils (т.е. уже установлена)

выбрать также уже доступен в специальном {base}

Ответ 4

Пакет Combinations не является частью стандартного набора пакетов CRAN, но скорее является частью другого репозитория omegahat. Чтобы установить его, вам нужно использовать

install.packages("Combinations", repos = "http://www.omegahat.org/R")

Смотрите документацию на http://www.omegahat.org/Combinations/

Ответ 5

Возможно, пакет "Комбинации" больше не обновляется и не работает с последней версией R (я также не смог установить его на R 2.13.1 на окнах). Пакет "combinat" устанавливается без проблем для меня и может быть решением для вас в зависимости от того, что именно вы пытаетесь сделать.