How do you divide each row by its first nonzero element?
1 view (last 30 days)
Show older comments
jones matthew
on 30 Oct 2017
Commented: jones matthew
on 30 Oct 2017
How you would divide each row by its first nonzero element? For example, if I have a matrix A=[1 9 7;0 2 4;0 0 5], I want it to be [1 9 7;0 1 2; 0 0 1] where the diagonals of the matrix are 1s. As you can see, I want the first row and all of its columns to be the same. Would it also be possible to have the code for this problem be 1 line?
2 Comments
Accepted Answer
Stephen23
on 30 Oct 2017
>> A = [4,9,7;0,2,4;0,0,5];
>> B = bsxfun(@rdivide,A,diag(A));
>> B(1,:) = A(1,:)
B =
4 9 7
0 1 2
0 0 1
0 Comments
More Answers (0)
See Also
Categories
Find more on Creating and Concatenating Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!