- Practical Data Analysis Cookbook
- Tomasz Drabas
- 315字
- 2021-07-16 11:13:54
Normalizing and standardizing the features
We normalize (or standardize) data for computational efficiency and so we do not exceed the computer's limits. It is also advised to do so if we want to explore relationships between variables in a model.
Normalization transforms all the observations so that all their values fall between 0
and 1
(inclusive). Standardization shifts the distribution so that the mean of the resultant values is 0
and standard deviation equals 1
.
Getting ready
To execute this recipe, you will need the pandas
module.
No other prerequisites are required.
How to do it…
To perform normalization and standardization, we define two helper functions (the data_standardize.py
file):
def normalize(col): ''' Normalize column ''' return (col - col.min()) / (col.max() - col.min()) def standardize(col): ''' Standardize column ''' return (col - col.mean()) / col.std()
How it works…
To normalize a set of observations, that is, to make each and every single one of them to be between 0
and 1
, we subtract the minimum value from each observation and divide it by the range of the sample. The range in statistics is defined as a difference between the maximum and minimum value in the sample. Our normalize(...)
method does exactly as described previously: it takes a set of values, subtracts the minimum from each observation, and divides it by the range.
Standardization works in a similar way: it subtracts the mean from each observation and divides the result by the standard deviation of the sample. This way, the resulting sample has a mean equal to 0
and standard deviation equal to 1
. Our standardize(...)
method performs these steps for us:
csv_read['n_price_mean'] = normalize(csv_read['price_mean']) csv_read['s_price_mean'] = standardize(csv_read['price_mean'])
- 大學計算機基礎(第三版)
- PaaS程序設計
- Cross-platform Desktop Application Development:Electron,Node,NW.js,and React
- Rust Cookbook
- 基于差分進化的優化方法及應用
- Python Network Programming Cookbook(Second Edition)
- C語言從入門到精通(第4版)
- FFmpeg入門詳解:音視頻原理及應用
- C#程序設計基礎:教程、實驗、習題
- PLC編程與調試技術(松下系列)
- 細說Python編程:從入門到科學計算
- Go語言從入門到精通
- Mastering JavaScript
- LabVIEW數據采集
- Building UIs with Wijmo