Selecting multiple data ranges

6 visualizaciones (últimos 30 días)
Binu
Binu el 15 de Dic. de 2020
Comentada: Binu el 15 de Dic. de 2020
Hi,
This may be a simple thing, but I canot figure it out. This is simply something what I want to do ;
A1=(1:100)';
A2=(101:200)';
A3=[A1(1):A2(1),A1(2):A2(2),A1(3):A2(3),A1(4):A2(4), .............., A1(12):A2(12)]';
Is there any easy way to get this done rather than writing the long line with all 1 to 12 elements?
Appreciate your help
Thank you

Respuestas (1)

Matt Gaidica
Matt Gaidica el 15 de Dic. de 2020
Editada: Matt Gaidica el 15 de Dic. de 2020
Do you need A1 and A2?
A3 = repmat(1:100,12,1) + transpose(repmat(0:11,100,1));
or
A3 = bsxfun(@plus,0:11,transpose(1:100));
  1 comentario
Binu
Binu el 15 de Dic. de 2020
Hi Matt,
Thank you for the reply.
I think my previous question was not very clear to get an answer in a way that I need.
If I put the numbers here....
A1=16745, 106274, 118049, 121015, 134331, 232569, 320928, 389473, 426957, 457992, 463514, 474278
A2=19343, 107752, 118528, 121693, 134349, 233340, 321452, 390241, 427364, 459020, 466512, 474401
So each pair (A1(1) : A2(1) ) represents a data range.
A3=[A1(1):A2(1),A1(2):A2(2),A1(3):A2(3),A1(4):A2(4), .............., A1(12):A2(12)]';
Is there any easy way to get A3 done rather than writing the long line with all 1 to 12 elements of A1 and A2?
Appreciate your help
Thank you

Iniciar sesión para comentar.

Categorías

Más información sobre Logical en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by