Y a t il une fonction R pour obtenir le nombre de permutations de n objets en k P(n,k)?
..ou dois-je donner
P.nk <- factorial(n) / factorial(n-k)
ou
P.nk <- choose(n,k) * factorial(k)
Merci.
Comme d'autres l'ont dit, il y a un droit de permutations fonction dans gregmisc (gtools dans le nouveau analysée gregmisc paquets). Mais, et toutes les autres fonctions de package que j'ai trouvé sont vraiment pour générer des permutations, pas juste de donner le nombre total de permutations. Par conséquent, ils ont tendance à être lent. J'ai comparé juste à de telles fonctions avant. Votre option 2 ci est de loin le plus rapide, beaucoup plus rapide que n'importe quel paquet de fonctions que j'ai trouvé. Il dispose également d'une hausse de la limite supérieure pour les calculs que votre première option.
Merci pour les informations utiles
Merci pour les informations utiles
OriginalL'auteur Brani | 2010-05-20
Vous devez vous connecter pour publier un commentaire.
Je ne sais pas du tout d'une fonction existante. Votre première suggestion échouera avec n grand. Votre deuxième idée devrait fonctionner correctement lorsqu'il est écrit comme une fonction:
Puis
perm(500,2)
donnera 249500 par exemple.exp(lfactorial(n) - lfactorial(n-k))
. Mais je vais l'utiliser de seconde de trop.OriginalL'auteur Rob Hyndman
Je pense que le gregmisc paquet fournit ces fonctions.
Liste de diffusion référence: [R] permutation
OriginalL'auteur neilfws
Découvrez
nsamp(n,k,ordered=T)
dans le 'problème' packagensamp(500,2,ordered=TRUE)
rencontre problème de l'état de Rob réponse (value out of range
).OriginalL'auteur wkmor1