Python數據預處理之數據規範化(歸一化)示例

這篇文章主要介紹了Python數據預處理之數據規範化,簡單描述了數據規範化的原理、用法及相關操作技巧,需要的朋友可以參考下

本文實例講述了Python數據預處理之數據規範化。分享給大家供大家參考,具體如下:

數據規範化

爲了消除指標之間的量綱和取值範圍差異的影響,需要進行標準化(歸一化)處理,將數據按照比例進行縮放,使之落入一個特定的區域,便於進行綜合分析。

數據規範化方法主要有:

- 最小-最大規範化
- 零-均值規範化

數據示例

代碼實現

#-*- coding: utf-8 -*-
#數據規範化
import pandas as pd
import numpy as np
datafile = 'normalization_data.xls' #參數初始化
data = pd.read_excel(datafile, header = None) #讀取數據
(data - data.min())/(data.max() - data.min()) #最小-最大規範化
(data - data.mean())/data.std() #零-均值規範化

從命令行可以看到下面的輸出:

>>> (data-data.min())/(data.max()-data.min(
          0         1         2         3
0  0.074380  0.937291  0.923520  1.000000
1  0.619835  0.000000  0.000000  0.850941
2  0.214876  0.119565  0.813322  0.000000
3  0.000000  1.000000  1.000000  0.563676
4  1.000000  0.942308  0.996711  0.804149
5  0.264463  0.838629  0.814967  0.909310
6  0.636364  0.846990  0.786184  0.929571

>>> (data-data.mean())/data.std()
          0         1         2         3
0 -0.905383  0.635863  0.464531  0.798149
1  0.604678 -1.587675 -2.193167  0.369390
2 -0.516428 -1.304030  0.147406 -2.078279
3 -1.111301  0.784628  0.684625 -0.456906
4  1.657146  0.647765  0.675159  0.234796
5 -0.379150  0.401807  0.152139  0.537286
6  0.650438  0.421642  0.069308  0.595564

上述代碼改爲使用print語句打印,如下:

#-*- coding: utf-8 -*-
#數據規範化
import pandas as pd
import numpy as np
datafile = 'normalization_data.xls' #參數初始化
data = pd.read_excel(datafile, header = None) #讀取數據
print((data - data.min())/(data.max() - data.min())) #最小-最大規範化
print((data - data.mean())/data.std()) #零-均值規範化

可輸出如下打印結果:

          0         1         2         3
0  0.074380  0.937291  0.923520  1.000000
1  0.619835  0.000000  0.000000  0.850941
2  0.214876  0.119565  0.813322  0.000000
3  0.000000  1.000000  1.000000  0.563676
4  1.000000  0.942308  0.996711  0.804149
5  0.264463  0.838629  0.814967  0.909310
6  0.636364  0.846990  0.786184  0.929571
          0         1         2         3
0 -0.905383  0.635863  0.464531  0.798149
1  0.604678 -1.587675 -2.193167  0.369390
2 -0.516428 -1.304030  0.147406 -2.078279
3 -1.111301  0.784628  0.684625 -0.456906
4  1.657146  0.647765  0.675159  0.234796
5 -0.379150  0.401807  0.152139  0.537286
6  0.650438  0.421642  0.069308  0.595564

附:代碼中使用到的normalization_data.xls點擊此處本站下載

更多關於Python相關內容感興趣的讀者可查看本站專題:《Python數學運算技巧總結》、《Python數據結構與算法教程》、《Python函數使用技巧總結》、《Python字符串操作技巧彙總》、《Python入門與進階經典教程》及《Python文件與目錄操作技巧彙總

希望本文所述對大家Python程序設計有所幫助。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章