# Creating groups of 2 people from a cell array of names

9 views (last 30 days)
Areesh Adil on 11 Mar 2020
Commented: Bhaskar R on 11 Mar 2020
If I have a n x 1 cell array of names and want to create random 2-person groups out of the names without repeats so that I have a (n/2) x 2 cell array, how would I go about doing so? Just an idea on how to start or a hint would also be helpful.

the cyclist on 11 Mar 2020
If C is your cell array, then
reshape(C(randperm(n)),n/2,2)

Bhaskar R on 11 Mar 2020
n = 26;
x = cellstr(char([65:65+n-1]')); % your cell data assumed
rand_nums = reshape(randsample(n,n), n/2, 2); % random numbers
rand_cell = x(rand_nums);
##### 2 CommentsShowHide 1 older comment
Bhaskar R on 11 Mar 2020
i created a dummy cell data x which contains character data(A to Z characters each character is a cell). Then created random samples(unique random values) and reshaped as 2 pairs as you require there are random locations to extract data from x

### Categories

Find more on Matrices and Arrays in Help Center and File Exchange

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by