decimal to binary conversion of an array

5 ビュー (過去 30 日間)
PRAVEEN GUPTA
PRAVEEN GUPTA 2019 年 10 月 1 日
回答済み: PRAVEEN GUPTA 2019 年 10 月 2 日
i have an array a=[102, 2,3,201,8,9]
so when i convert it to binary each term has same length as
[ 0 1 1 0 0 1 1 0
0 0 0 0 0 0 1 0
0 0 0 0 0 0 1 1
1 1 0 0 1 0 0 1
0 0 0 0 1 0 0 0
0 0 0 0 1 0 0 1]
but i want each term to become binary according to the size not with padded zero as 2 in binary is '10' not '0 0 0 0 0 0 1 0'
thanks in advance
  4 件のコメント
Walter Roberson
Walter Roberson 2019 年 10 月 2 日
Numeric only
Sorry, that is not possible in MATLAB. In MATLAB, numeric arrays must always have the same number of columns in each row.
If you had wanted cell array of character vectors, or string array, or cell array of numeric vectors, then those would be possible.
PRAVEEN GUPTA
PRAVEEN GUPTA 2019 年 10 月 2 日
Then how to do cell array of numeric vector??

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

採用された回答

Stephen23
Stephen23 2019 年 10 月 2 日
編集済み: Stephen23 2019 年 10 月 2 日
Cell array of character vectors:
>> a = [102,2,3,201,8,9];
>> c = arrayfun(@dec2bin,a,'uni',0);
>> c{:}
ans = 1100110
ans = 10
ans = 11
ans = 11001001
ans = 1000
ans = 1001
Cell array of numeric vectors:
>> c = arrayfun(@(n)dec2bin(n)-'0',a,'uni',0);
>> c{:}
ans =
1 1 0 0 1 1 0
ans =
1 0
ans =
1 1
ans =
1 1 0 0 1 0 0 1
ans =
1 0 0 0
ans =
1 0 0 1

その他の回答 (1 件)

PRAVEEN GUPTA
PRAVEEN GUPTA 2019 年 10 月 2 日
Thanks

カテゴリ

Help Center および File ExchangeData Type Conversion についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by