8 digit double array to 1 digit double array

2 Ansichten (letzte 30 Tage)
Hye Sung Moon
Hye Sung Moon am 15 Apr. 2020
Kommentiert: Walter Roberson am 16 Apr. 2020
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.

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 15 Apr. 2020
Bearbeitet: Walter Roberson am 15 Apr. 2020
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 Kommentare
Walter Roberson
Walter Roberson am 16 Apr. 2020
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 am 16 Apr. 2020
cell2mat(compose('%08d',H(:)))-'0'

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (2)

Tommy
Tommy am 15 Apr. 2020
How about
H_conv = num2str(H)-'0'

James Tursa
James Tursa am 15 Apr. 2020
For column vector H:
H_conv = cell2mat(arrayfun(@(x)sprintf('%08d',x),H,'uni',false)) - '0'

Kategorien

Mehr zu Matrices and Arrays finden Sie in Help Center und File Exchange

Tags

Noch keine Tags eingegeben.

Community Treasure Hunt

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

Start Hunting!

Translated by