8 digit double array to 1 digit double array

4 vues (au cours des 30 derniers jours)
Hye Sung Moon
Hye Sung Moon le 15 Avr 2020
Commenté : Walter Roberson le 16 Avr 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.

Réponse acceptée

Walter Roberson
Walter Roberson le 15 Avr 2020
Modifié(e) : Walter Roberson le 15 Avr 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 commentaires
Walter Roberson
Walter Roberson le 16 Avr 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 le 16 Avr 2020
cell2mat(compose('%08d',H(:)))-'0'

Connectez-vous pour commenter.

Plus de réponses (2)

Tommy
Tommy le 15 Avr 2020
How about
H_conv = num2str(H)-'0'

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

Catégories

En savoir plus sur Matrices and Arrays dans Help Center et File Exchange

Tags

Aucun tag saisi pour le moment.

Community Treasure Hunt

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

Start Hunting!

Translated by