Filter löschen
Filter löschen

Normalizing data

6 Ansichten (letzte 30 Tage)
John
John am 21 Dez. 2011
Hi there,
How would you normalize a column of data in matlab between 0 and 1 using the formula, z = (x-mean)/standard deviation. Is there a built in function to do this?
Many thanks
John
  1 Kommentar
Merhan Ahmed
Merhan Ahmed am 25 Jan. 2017
zscore function could be used as Z = zscore(X)

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Junaid
Junaid am 21 Dez. 2011
Dear John,
Lets say you have matrix D and you want to normalize each value of Column to unit length (between 0-1). One possible way is :
D = bsxfun(@rdivide,D,sum(D));
each column will be unit normalized. If you take the sum of each column it will be one.
sum(D)
Do let me know if I understand you correct.
  1 Kommentar
bym
bym am 23 Dez. 2011
zscore from the statistics toolbox does (x-mean)/standard deviation

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (3)

Jurgen
Jurgen am 18 Nov. 2012
Dividing by the maximum does not correct for offset. So only ranges 0-X go to 0-1. If his column has a negative or nonzero minimum it won't normalize to 0-1.
While the formula for correcting this is simple, mat2gray will normalize to 0-1 for you:
for i = 1:ncol
D(:,i) = mat2gray(D(:,i))
end
You have to decide if you need to normalize before or after your calculation.

VoyageR
VoyageR am 3 Nov. 2016
Also don't forget to set your data as double otherwise you will only have 1 or 0 in your normalized vector ; )
double(vectorOfIntergers)

marwa el-hossary
marwa el-hossary am 7 Mai 2018
plz, how can I normalize data of matrix 1x256000 between -0.5 and +0.5 by matlab code
  2 Kommentare
Steven Lord
Steven Lord am 7 Mai 2018
Use the normalize function with the 'range' method and a methodtype input.
Nikhil Jahagirdar
Nikhil Jahagirdar am 10 Apr. 2019
Does it support MAtlab R2016b?

Melden Sie sich an, um zu kommentieren.

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by