Multiplication of column elements of a matrix

1 vue (au cours des 30 derniers jours)
Vinay Killamsetty
Vinay Killamsetty le 19 Avr 2020
Commenté : Ameer Hamza le 24 Avr 2020
Hi
If I am having a marix of size "m*n"
I have to find the product of column elements of each row (But the number of columns selected for multiplication has to be user selected)
for example :
if the matrix is A=[1 2 3;4 5 6;7 8 9]
I want find the resultant vector containing [1 2*5*7 3*6] (multiplication of 1 element in the ist row, 2 elements in the second row, 3 elements in the 3rd row)
for this is have used the code
A=[1 2 3;4 5 6;7 8 9];
row_elemens=[1 3 2];
for i=1:3
result=prod(A(i,1:row_elemens(i)));
end
is there any simple solution for this problem without using any loop and with a single line

Réponse acceptée

Ameer Hamza
Ameer Hamza le 19 Avr 2020
Your question mentioned "without using any loop and with a single line". Try this
A=[1 2 3;4 5 6;7 8 9];
row_elemens=[1 3 2];
result = arrayfun(@(i) prod(A(i,1:row_elemens(i))), 1:3);
  2 commentaires
Vinay Killamsetty
Vinay Killamsetty le 24 Avr 2020
Thank you very much
Ameer Hamza
Ameer Hamza le 24 Avr 2020
I am glad to be of help.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Operating on Diagonal Matrices dans Help Center et File Exchange

Tags

Produits


Version

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by