how to partially multiply two diffferent dimention matrix
1 visualizzazione (ultimi 30 giorni)
Mostra commenti meno recenti
kavinda hw
il 14 Mag 2017
Commentato: kavinda hw
il 16 Mag 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 Commenti
John D'Errico
il 14 Mag 2017
Interesting. I wonder why two different people are asking the same question?
Risposta accettata
Star Strider
il 14 Mag 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 Commenti
Star Strider
il 14 Mag 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.
Più risposte (1)
Michael Saniuk
il 14 Mag 2017
>> A = rand(1250,1);
>> B = rand(1,500);
>> C = A(1:500,1).*B';
>> D = A(251:750,1).*B';
0 Commenti
Vedere anche
Categorie
Scopri di più su Multidimensional Arrays in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!