View License

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

Highlights from
Unique random permutations

5.0 | 1 rating Rate this file 5 Downloads (last 30 days) File Size: 5.96 KB File ID: #27321 Version: 1.0

Unique random permutations


Ged Ridgway (view profile)


Random sample (without replacement) from unique permutations of a vector or row-perms of a matrix

| Watch this File

File Information

1. Determines number of available unique permutations.
2. Computes a random set of unique permutations, containing the identity permutation.

MATLAB's "perms" is unsuitable for vectors longer than about 11 elements (where the output takes over 3GB). John D'Errico's "uniqueperms" is much better if there are relatively few unique permutations, but is not well suited to randomly sampling a small subset of a large number of unique permutations. On the other hand, repeated calls to randperm can produce duplicates.

"uperms" aims to fill the niche between these, and is ideal for use with statistical permutation testing algorithms (where it is helpful to know if the identity is or isn't present, hence the choice to guarantee it here; just ask for k+1 and use 2:end if you don't want the identity).

Some other routines are also included to provide faster solutions in special cases of permutation test: simple correlation (perms_m); one-sample t-test (signs_m); and two-sample t-test (nchoosek_m). See also:


This file inspired Nsumk.

MATLAB release MATLAB 7.1.0 (R14SP3)
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (1)
28 Feb 2014 Dave

Dave (view profile)

Contact us