create an array with general rules

3 次查看(过去 30 天)
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 个评论
Adam
Adam 2016-5-18
编辑:Adam 2016-5-18
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.

请先登录,再进行评论。

采纳的回答

Walter Roberson
Walter Roberson 2016-5-18
For versions before that use repmat()

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by