how to partially multiply two diffferent dimention matrix
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
kavinda hw
el 14 de Mayo de 2017
Comentada: kavinda hw
el 16 de Mayo de 2017
A[1,2500] and B[500,1]. how can i multiply 500 form A with B and then Skip 250 positions from A And multiply with B. e.g.., A[1 to 500]*B => store then A[250 to 750] * B=> store ,like wise
2 comentarios
John D'Errico
el 14 de Mayo de 2017
Interesting. I wonder why two different people are asking the same question?
Respuesta aceptada
Star Strider
el 14 de Mayo de 2017
This works:
A = randi(9, 1, 2500); % Create Data
B = randi(9, 500, 1); % Create Data
for k1 = 1:2
Result{k1} = bsxfun(@times, A(1, (1:500)+(k1-1)*250), B);
end
It produces (500x500) matrices. If you what a different result, I need to know what output you want. It will be easy to change my code to produce it.
2 comentarios
Star Strider
el 14 de Mayo de 2017
If you want the dot product (or inner product), change the ‘Result’ assignment to:
Result(k1) = A(1, (1:500)+(k1-1)*250) * B;
That will produce your (1x1) scalar result, as desired.
Más respuestas (1)
Michael Saniuk
el 14 de Mayo de 2017
>> A = rand(1250,1);
>> B = rand(1,500);
>> C = A(1:500,1).*B';
>> D = A(251:750,1).*B';
0 comentarios
Ver también
Categorías
Más información sobre Multidimensional Arrays 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!