Multiply each item of an array with every item of another array
18 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Christoph Meier
el 29 de Feb. de 2016
Comentada: Image Analyst
el 19 de Oct. de 2018
Dear matlab community,
I have a relatively simple problem:
I have two arrays, say:
1
2
3
and
10
11
12
I would like to multiply each of the first vector items with every of the second vector items, and print a new vector, which gives the output:
1*10
1*11
1*12
2*10
2*11
2*12
3*10
3*11
3*12
Thank you very much, I appreciate your help!
Greetings from Australia,
Chris
0 comentarios
Respuesta aceptada
Image Analyst
el 29 de Feb. de 2016
Like this:
m1 = [1;2;3]
m2 = [10;11;12]
out = m1 * m2'
% Make into column vector
out = out(:)
I'm sure there are probably other ways.
5 comentarios
Martin Adams
el 19 de Oct. de 2018
It seems like it is fairly easy to run out of memory when doing this with large arrays! I tried to do this with two 90k-long vectors! How much memory would be needed?
Image Analyst
el 19 de Oct. de 2018
>> bytes = 90000*90000*8
bytes =
64800000000
>> gigaBytes = bytes / 1e9
gigaBytes =
64.8
And you'd have two arrays so that would be 129 GB. That's a fair amount. You probably don't have that much spare RAM.
Más respuestas (0)
Ver también
Categorías
Más información sobre Loops and Conditional Statements 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!