create an array with general rules

2 views (last 30 days)
Dear all, I am struggling with Matlab, please help me. I want to create an array with some certain rules. Suppose I have an array [1,n]
a=1
b=6
c=4
I1=1
I2=2
I3=3
The rules are the number of I1 in the array is a, the number of I2 is b, the number of I3 is c. So the array should be like:
I=[I1 I2 ... I2 (b elements) I3...I3 (c elements)];
Please don't suggest me to list all the elements in 1 command. This is just an example to illustrate the problem. Thanks
  1 Comment
Adam
Adam on 18 May 2016
Edited: Adam on 18 May 2016
doc repmat
should help with that.
Or something like
b * ones(1,I2);
etc, though for an extensible solution it would need more thought, but having individual variables named I1, I2, I3 suggests it isn't extensible anyway so if that is the limit of how far you want to go then repmat or ones should work fine.

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 18 May 2016
For versions before that use repmat()

More Answers (0)

Tags

Community Treasure Hunt

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

Start Hunting!