How to prepare normalized feature matrix in MATLAB ?

2 views (last 30 days)
Hello all, I am having a feature matrix say of dimension 500 by 4. I want to normalize this feature matrix and obtain normalized feature matrix such that element of is obtained as ----(1)
where indicates element of feature matrix .
My query is how can we obtain normalized feature matrix from equation (1).
Any help in this regard will be highly appreciated.
  1 Comment
charu shree
charu shree on 17 Mar 2023
Edited: charu shree on 17 Mar 2023
I tried with 'for loop' and getting the proper answer. Here are my efforts:
for i = 1:500
for j = 1:4
p1 = min(D(i,:));
p2 = max(D(i,:));
d_ij = D(i,j);
deno = p2-p1;
numer = d_ij-p1;
P(i,j) = numer/deno;
end
end
Is there any other way so that I can avoid 'for loop' ?

Sign in to comment.

Accepted Answer

Dyuman Joshi
Dyuman Joshi on 17 Mar 2023
%Random data
D = rand(500,4);
%minimum of each row
minval=min(D,[],2);
%maximum of each row
maxval=max(D,[],2);
%Vector approach
P1=(D-minval)./(maxval-minval);
P2=zeros(size(D));
for i = 1:500
for j = 1:4
p1 = min(D(i,:));
p2 = max(D(i,:));
d_ij = D(i,j);
deno = p2-p1;
numer = d_ij-p1;
P2(i,j) = numer/deno;
end
end
%Checking if the outputs are equal or not
isequal(P1,P2)
ans = logical
1

More Answers (0)

Categories

Find more on Particle & Nuclear Physics 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!