Create a random sequence with specified values

3 次查看(过去 30 天)
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 个评论
Guillaume
Guillaume 2019-9-16
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 2019-9-16
编辑:luca 2019-9-16
please note that I re-arrange the question in a different way that is much more easier to understand. Could you help me?

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Creating and Concatenating Matrices 的更多信息

产品


版本

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by