I want to combine two columns. Here is the example of probleme: A column has lot of number like 20100101;20100102... .B column has the same amount of numbers like 020510000;020510040... . I want to aggregate A and B columns to have one column like 2010010120510000;20100102020510040... . That every A(x) would be in the same row with B(x). Thank you very much.

 Respuesta aceptada

Star Strider
Star Strider el 17 de Sept. de 2015

0 votos

One approach:
A = [20100101;20100102];
B = [020510000;020510040];
ABS = sprintf('%d%09d\n', [A, B]'); % String Representation
ABN = str2num(sprintf('%d%09d\n', [A, B]')) % Numeric Conversion

2 comentarios

Paulius Vaikasas
Paulius Vaikasas el 17 de Sept. de 2015
Thank you.
Star Strider
Star Strider el 17 de Sept. de 2015
My pleasure!

Iniciar sesión para comentar.

Más respuestas (1)

James Tursa
James Tursa el 17 de Sept. de 2015
Editada: James Tursa el 17 de Sept. de 2015

0 votos

This is how one would do it if A and B are doubles:
C = A*1e8 + B;
However, each of A and B has 8 decimal digits, so the result of this calculation will have 16 decimal digits. That is right at the limit of what a double precision value can hold, and may even be beyond depending on the actual values involved. So this might not work and you may need a different method.
If A and B are actually char arrays, then it is simply:
C = [A,B];

Categorías

Más información sobre MATLAB Compiler en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 17 de Sept. de 2015

Comentada:

el 17 de Sept. de 2015

Community Treasure Hunt

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

Start Hunting!

Translated by