create a binary sequence that consisting of m zeros and n ones in any order.

5 ビュー (過去 30 日間)
Bear
Bear 2014 年 11 月 23 日
コメント済み: Bear 2014 年 11 月 27 日
I need help to program a matlab code to generate a binary sequence that contains m zeros and n ones. I created a N lengths of zero, x1=zeros(1,N), but how to add n ones into the sequence of zeros.

採用された回答

Star Strider
Star Strider 2014 年 11 月 23 日
The easiest way:
x1 = [zeros(1,N) ones(1,M)];
  1 件のコメント
Bear
Bear 2014 年 11 月 25 日
Thx alot and it works well, but I forgot to say the zeros and ones have to be placed in random order. Do you have any ideas how to do this.

サインインしてコメントする。

その他の回答 (3 件)

Roger Stafford
Roger Stafford 2014 年 11 月 23 日
Or perhaps you want them in random order:
x = zeros(1,m+n);
p = randperm(1:m+n,n);
x(p) = ones(1,n);
  4 件のコメント
Azzi Abdelmalek
Azzi Abdelmalek 2014 年 11 月 25 日
There is an error in
p = randperm(1:m+n,n);
Roger Stafford
Roger Stafford 2014 年 11 月 26 日
Yes, it should have been
p = randperm(m+n,n);

サインインしてコメントする。


Azzi Abdelmalek
Azzi Abdelmalek 2014 年 11 月 23 日
編集済み: Azzi Abdelmalek 2014 年 11 月 23 日
x1=[zeros(1,5) ones(1,4)]
%or
N=5;
n=4;
X1=1:n+N>N
  4 件のコメント
Bear
Bear 2014 年 11 月 25 日
Thank you. That was what I asked for.
Bear
Bear 2014 年 11 月 27 日
There is a question on my further programming this code, For example, m=n=2. then the number of combinations of the binary sequence is 6,nchoosek(4,2). My code was fine to output the 6 combinations. However, the combinations are not unique. one or two combinations show twice. Here is the detail of question, you may want to click and take a look. generate the binary sequence Again, thank you for the great helps.

サインインしてコメントする。


Jan
Jan 2014 年 11 月 23 日
And another apporach:
x1 = zeros(1, n+m);
x1(n+1:n+m) = 1;

カテゴリ

Help Center および File ExchangeLogical についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by