8 digit double array to 1 digit double array

4 ビュー (過去 30 日間)
Hye Sung Moon
Hye Sung Moon 2020 年 4 月 15 日
コメント済み: Walter Roberson 2020 年 4 月 16 日
Hi, I am trying to extract 8 digit double array to 1 digit double array.
H = [10001000;
10000001]
I would like to save H(2*1) double matrix to
H_conv = [ 1 0 0 0 1 0 0 0;
1 0 0 0 0 0 0 1]
H_conv(2*8) double matrix.
Thank you.

採用された回答

Walter Roberson
Walter Roberson 2020 年 4 月 15 日
編集済み: Walter Roberson 2020 年 4 月 15 日
num2str(H) - '0'
This relies upon H being a column vector and will not give you the desired answer if H has more than one column.
It will also not give your desired answer if the top digit of H is not set in all values.
  4 件のコメント
Walter Roberson
Walter Roberson 2020 年 4 月 16 日
And you need the same number of digits in each number. It is a "fast and dirty" answer, not the best answer.
Walter Roberson
Walter Roberson 2020 年 4 月 16 日
cell2mat(compose('%08d',H(:)))-'0'

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

その他の回答 (2 件)

Tommy
Tommy 2020 年 4 月 15 日
How about
H_conv = num2str(H)-'0'

James Tursa
James Tursa 2020 年 4 月 15 日
For column vector H:
H_conv = cell2mat(arrayfun(@(x)sprintf('%08d',x),H,'uni',false)) - '0'

カテゴリ

Help Center および File ExchangeMatrices and Arrays についてさらに検索

タグ

タグが未入力です。

Community Treasure Hunt

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

Start Hunting!

Translated by