For loop for matrix division

1 visualizzazione (ultimi 30 giorni)
quinn rizzo
quinn rizzo il 7 Nov 2019
Modificato: John D'Errico il 8 Nov 2019
How would you use a for loop to divide a matrix by a vector if the vector has changing values?
  1 Commento
Walter Roberson
Walter Roberson il 7 Nov 2019
If the matrix is A, and the vector is V, then how should the output be constructed? Is Output(J,K) = A(J,K)./V(J) for example ? Is every column to be divided by a different version of the vector, such as (for example) A(:,1)./V, A(:,2)./V.^2, A(:,3)./V.^3 ?

Accedi per commentare.

Risposte (1)

John D'Errico
John D'Errico il 7 Nov 2019
Modificato: John D'Errico il 8 Nov 2019
Why would you want to use any loop at all? For example, if A is an mxn matrix, and V is a vector of size mx1, then consider what does this do:
B = A./V;
At least, if you are using release R2016b or later.
Earlier releases would use bxfun...
B = bsxfun(@rdivide,A,V);
Still pretty easy. If V is a row vector, then similar things apply.
So unless this is homework, why would you bother using a loop at all? And if it is homework, then why not try something? (And tell us honestly that it is your homework.) Show what you would think of doing, and you might get some advice on how to fix it. And you never know, you might even get it right yourself.

Categorie

Scopri di più su Loops and Conditional Statements 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!

Translated by