How to normalize matrix by specific columns matlab?

2 views (last 30 days)
Hi everyone,
I have matrix 366x35. I would like to normalize values by specific columns, it means that only columns 1-33 should be normalized and others (34-35) should keep previous values. How I can do that?

Accepted Answer

Walter Roberson
Walter Roberson on 3 Jan 2020
One kind of normalization:
YourMatrix(:,1:33) = YourMatrix(:,1:33)./sum(YourMatrix(:,1:33));
Another kind:
YourMatrix(:,1:33) = mat2gray(YourMatrix(:,1:33)); %normalizes between min and max of the entire set of columns
Another kind:
min33 = min(YourMatrix(:,1:33));
max33 = max(YourMatrix(:,1:33));
range33 = max33 - min33;
YourMatrix(:,1:33) = (YourMatrix(:,1:33) - min33)./range33; %normalizes each column to 0 to 1 independently

More Answers (0)

Community Treasure Hunt

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

Start Hunting!