how to normalize a matrix?????

3 views (last 30 days)
abdulkader helwan
abdulkader helwan on 22 Oct 2014
Answered: Steven Lord on 22 Feb 2021
hello everyone... i need a code to normalize( between 0 and 1) a matrix 7*50. the normalization process should be for each column not row**. in other words, the program should seek for the largest value in each column and divide all the elements in that column by it. can anybody help plzz

Answers (3)

James Tursa
James Tursa on 22 Oct 2014
Edited: James Tursa on 22 Oct 2014
Assuming values are positive, e.g.,
M = your matrix
N = bsxfun(@rdivide,M,max(M)); % Normalized (scaled) matrix by column

Greg Heath
Greg Heath on 23 Oct 2014
rng('default')
A = 100*randn(3)
Amin = repmat(min(A),3,1)
Amax = repmat(max(A),3,1)
a = (A-Amin)./(Amax-Amin)
Hope this helps.
Thank you for formally accepting my answer
Greg
  1 Comment
Image Analyst
Image Analyst on 25 Oct 2014
abdulkader's "Answer" moved here:
thnaks bro.. that was helpful

Sign in to comment.


Steven Lord
Steven Lord on 22 Feb 2021
Use the normalize function with a dim input and the 'range' normalization method.

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Tags

No tags entered yet.

Community Treasure Hunt

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

Start Hunting!