Create a random sequence with specified values

1 view (last 30 days)
luca
luca on 16 Sep 2019
Edited: luca on 16 Sep 2019
Given a matrix
A= [0 15 11 2 4 0 3 1 13;
14 0 16 0 0 0 0 0 0;
0 0 0 0 8 0 0 0 0;
0 0 18 0 0 0 0 0 0;
0 0 19 0 0 0 0 0 0;
0 0 0 0 0 0 0 0 0];
I want to create a random sequence in a vector F where
1) the sequence that I need to create must be composed by a repetition of batches. The elements inside the batches are defined by each columns: The 1st batch is made by 14. the 2nd batch is made by 15. the 3rd batch is made by 11 16 18 19 and so on.
The length of the batches should be variable.
2) given a vector S = [1 2 3 4 8 11 13 14 15 16 18 19 20] which collects the elements in A and a vector Y= [ 12 34 45 10 12 35 40 40 23 45 21 24 56], Y tells us how many parts we need inside the sequence. So we need part-1 12 times, part-2 34 times, part-3 45 times, part-4 10 times and so on. in total the sequence will have length equal to sum(Y)=397
May someone help me with this difficult task?
  3 Comments
Guillaume
Guillaume on 16 Sep 2019
Other than S being sort(nonzeros(A))' with a 20 tacked on the end for some reason, I don't see how the second half of the question is related the the first half. In particular, in the 2nd half, it's not clear what parts refer to in "how many parts we need. Are the parts somehow related to the batches of the 1st half.
luca
luca on 16 Sep 2019
Edited: luca on 16 Sep 2019
please note that I re-arrange the question in a different way that is much more easier to understand. Could you help me?

Sign in to comment.

Answers (0)

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Products


Release

R2019b

Community Treasure Hunt

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

Start Hunting!