creating a variable to use for grouping data

I want to create a variable (a column vector) with a specific length (8000), containing values 1 to 10 randomly assigned and with a specific average repetition of each number (say 800). How to do this?

 Accepted Answer

If the number of repetitions is to be exact:
t = repmat(1:10.', 800, 1);
t(randperm(length(t)))
If the repetitions need not be exact:
1 + floor(10 * rand(8000,1))

2 Comments

Very impressive!
Opps, I had an extra layer of repmat() on the first solution! I have edited.

Sign in to comment.

More Answers (0)

Products

Tags

Community Treasure Hunt

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

Start Hunting!