日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

数据挖掘之3种数据归一化方法及代码实现

發布時間:2025/3/21 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数据挖掘之3种数据归一化方法及代码实现 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

學習數據挖掘、機器學習的同學們應該經常碰到數據歸一化(也稱標準化),數據的不同特征種類(評價指標)的取值范圍差別可能很大,如果不做處理會影響數據分析的結果。因此需要把數據進行標準化處理,將數據進行比例縮放,以消除不同特征間量綱和取值范圍差異帶來的影響。

數據歸一化處理對基于距離的數據挖掘算法尤為重要。下面就簡要介紹3種常用的數據歸一化方法。

1、最大最小歸一化

該方法也稱離差標準化,其核心思想是把原始數據的數值線性變換到[0,1]之間,公式如下:

其中,max、min分別為樣本數據的最大值、最小值。

優點:保留源數據存在的關系,消除取值范圍最簡單的方法;

缺點:極易受個別離群值影響,如果數據集中某個數值很大,其他各值歸一化后會接近0;此外,如果遇到超出[min,max]的值,會出現錯誤。

2、零-均值歸一化

也稱標準差歸一化,顧名思義,經處理的數據的均值為0,標準差為1,公式如下:

其中,、σ分別為源數據的均值、標準差。

該方法被廣泛使用,但均值和標準差也一樣易受離群值影響,因此需要進行修正,比如:可用中位數取代均值進行上述計算。

3、小數定標規范化

該方法是通過移動特征數據的小數位數,將其轉換到[-1,1]之間,移動的小數位由特征值絕對值的最大值決定,公式如下:

下面來看看3種方法的代碼實現:

%讀入數據 data='../input/normalizationData.xls'; [data, ~]=xlsread(data);%方法一:最大最小歸一化 data_scatter = mapminmax(data',0,1); %把數據進行轉置 data_scatter = data_scatter';%方法二:零-均值歸一化 data_zscore = zscore(data);%方法三:小數定標歸一化 max_ = max(abs(data)); max_ = power(10, ceil(log10(max_))); cols = size(max_, 2); data_dot = data; for i = 1:colsdata_dot(:,i) = data(:,i)/max_(1,i); end%打印輸出結果 disp('源數據如下:'); disp(data);disp('最大最小歸一化結果如下:'); disp(data_scatter);disp('零-均值歸一化結果如下:'); disp(data_zscore);disp('小數定標歸一化結果如下:'); disp(data_dot);

?

總結

以上是生活随笔為你收集整理的数据挖掘之3种数据归一化方法及代码实现的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。