When given a matrix with x columns, how do you multiply the first column by 1, the second column by 2, etc?

For example, if the matrix has 4 columns. I want to multiply the first column by 1, the second column by 2, the third column by 3 and the fourth column by 4. How can I create a function for this?

 Accepted Answer

Use bsxfun(). For example,
A = rand(3,4);
B = bsxfun(@times,A,1:4)
More generally,
B = bsxfun(@times,A,1:size(A,2))

More Answers (0)

Categories

Asked:

S
S
on 4 Oct 2014

Edited:

on 4 Oct 2014

Community Treasure Hunt

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

Start Hunting!