About matrix: how to make matrix binary (0 and 1)

I need write the matrix (0 0 0 0 0), (1 0 0 0 0), (1 1 0 0 0), (1 1 1 0 0),..., (1 1 1 1 1) with 32 possibilities of zero and one using the matlab, and don´t hand.
Thanks.

回答 (1 件)

Matt Fig
Matt Fig 2012 年 12 月 17 日
編集済み: Matt Fig 2012 年 12 月 17 日

0 投票

S = dec2bin((1:32).') % If a string is o.k.
N = S - '0' % If you need a numeric matrix.

9 件のコメント

John Petersen
John Petersen 2012 年 12 月 17 日
How does the N=S-'0' work? I see that it does, very clever, but why?
JRC
JRC 2012 年 12 月 17 日
Thanks Matt Fig...
And it´s possible to do the matrix (-1 -1 -1 -1 -1), (-1 -1 -1 -1 1), (-1 -1 -1 1 1), (-1 -1 1 1 1),..., (1 1 1 1 1) with 32 possibilities of one and one minus using the matlab, and don´t hand.
José-Luis
José-Luis 2012 年 12 月 17 日
編集済み: José-Luis 2012 年 12 月 17 日
@JRC: Add:
N(N==0) = -1;
Please accept an answer if it helps you.
Azzi Abdelmalek
Azzi Abdelmalek 2012 年 12 月 17 日
%or
N(~N)=-1;
JRC
JRC 2012 年 12 月 17 日
Ok...
Thanks.
Matt Fig
Matt Fig 2012 年 12 月 17 日
編集済み: Matt Fig 2012 年 12 月 17 日
John, MATLAB converts both strings to doubles then subtracts. It is the same as doing:
S - 48
Image Analyst
Image Analyst 2012 年 12 月 17 日
編集済み: Image Analyst 2012 年 12 月 17 日
You can also cast to logical if you want a boolean type of variable:
logicalVariable = logical(doubleVariable);
Logical variables are useful in indexing, especially in image processing. In image processing a "binary" variable is usually assumed to be of logical type ("class").
Rabiya Tanveer
Rabiya Tanveer 2021 年 8 月 15 日
helpful
Walter Roberson
Walter Roberson 2021 年 8 月 15 日
S = (dec2bin((1:32)) - '0') * 2 - 1
S = 32×6
-1 -1 -1 -1 -1 1 -1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 1 -1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 1 -1 -1 -1 1 1 -1 -1 -1 -1 1 1 1 -1 -1 1 -1 -1 -1 -1 -1 1 -1 -1 1 -1 -1 1 -1 1 -1

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

カテゴリ

タグ

質問済み:

JRC
2012 年 12 月 17 日

コメント済み:

2021 年 8 月 15 日

Community Treasure Hunt

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

Start Hunting!

Translated by