資料規範化
為了消除指標之間的量綱和取值範圍差異的影響,需要進行標準化(歸一化)處理,將資料按照比例進行縮放,使之落入乙個特定的區域,便於進行綜合分析。
資料規範化方法主要有:
- 最小-最大規範化
- 零-均值規範化
資料示例
**實現
#-*- 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.www.cppcns.com000000 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 www.cppcns.com; 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 &txcfksnbsp; 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 txcfks 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資料預處理
1.匯入資料檔案 excel,csv,資料庫檔案等 df read table file,names 列名1,列名2,sep encoding file是檔案路徑,names預設為檔案的第一行為列名,sep為分隔符,預設為空,表示預設匯入為一列 encoding設定檔案編碼,匯入中文時,需設定utf...
python資料預處理
scikit learn 提供的binarizer能夠將資料二元化 from sklearn.preprocessing import binarizer x 1,2,3,4,5 5,4,3,2,1 3,3,3,3,3 1,1,1,1,1 print before transform x binar...
python資料預處理
import pandas as pd 缺失值處理 df pd.read excel users caizhengjie desktop a.xlsx print df 直接呼叫info方法就會返回每一列的缺失值 print df.info print isnull方法判斷哪個是缺失值 print ...