『壹』 如何判別測量數據中是否有異常值
一般異常值的檢測方法有基於統計的方法,基於聚類的方法,以及一些專門檢測異常值的方法等,下面對這些方法進行相關的介紹。
1. 簡單統計
如果使用pandas,我們可以直接使用describe()來觀察數據的統計性描述(只是粗略的觀察一些統計量),不過統計數據為連續型的,如下:
df.describe()紅色箭頭所指就是異常值。
以上是常用到的判斷異常值的簡單方法。下面來介紹一些較為復雜的檢測異常值演算法,由於涉及內容較多,僅介紹核心思想,感興趣的朋友可自行深入研究。
4. 基於模型檢測
這種方法一般會構建一個概率分布模型,並計算對象符合該模型的概率,把具有低概率的對象視為異常點。如果模型是簇的集合,則異常是不顯著屬於任何簇的對象;如果模型是回歸時,異常是相對遠離預測值的對象。
離群點的概率定義:離群點是一個對象,關於數據的概率分布模型,它具有低概率。這種情況的前提是必須知道數據集服從什麼分布,如果估計錯誤就造成了重尾分布。
比如特徵工程中的RobustScaler方法,在做數據特徵值縮放的時候,它會利用數據特徵的分位數分布,將數據根據分位數劃分為多段,只取中間段來做縮放,比如只取25%分位數到75%分位數的數據做縮放。這樣減小了異常數據的影響。
優缺點:(1)有堅實的統計學理論基礎,當存在充分的數據和所用的檢驗類型的知識時,這些檢驗可能非常有效;(2)對於多元數據,可用的選擇少一些,並且對於高維數據,這些檢測可能性很差。
5. 基於近鄰度的離群點檢測
統計方法是利用數據的分布來觀察異常值,一些方法甚至需要一些分布條件,而在實際中數據的分布很難達到一些假設條件,在使用上有一定的局限性。
確定數據集的有意義的鄰近性度量比確定它的統計分布更容易。這種方法比統計學方法更一般、更容易使用,因為一個對象的離群點得分由到它的k-最近鄰(KNN)的距離給定。
需要注意的是:離群點得分對k的取值高度敏感。如果k太小,則少量的鄰近離群點可能導致較低的離群點得分;如果K太大,則點數少於k的簇中所有的對象可能都成了離群點。為了使該方案對於k的選取更具有魯棒性,可以使用k個最近鄰的平均距離。
優缺點:(1)簡單;(2)缺點:基於鄰近度的方法需要O(m2)時間,大數據集不適用;(3)該方法對參數的選擇也是敏感的;(4)不能處理具有不同密度區域的數據集,因為它使用全局閾值,不能考慮這種密度的變化。
5. 基於密度的離群點檢測
從基於密度的觀點來說,離群點是在低密度區域中的對象。基於密度的離群點檢測與基於鄰近度的離群點檢測密切相關,因為密度通常用鄰近度定義。一種常用的定義密度的方法是,定義密度為到k個最近鄰的平均距離的倒數。如果該距離小,則密度高,反之亦然。另一種密度定義是使用DBSCAN聚類演算法使用的密度定義,即一個對象周圍的密度等於該對象指定距離d內對象的個數。
優缺點:(1)給出了對象是離群點的定量度量,並且即使數據具有不同的區域也能夠很好的處理;(2)與基於距離的方法一樣,這些方法必然具有O(m2)的時間復雜度。對於低維數據使用特定的數據結構可以達到O(mlogm);(3)參數選擇是困難的。雖然LOF演算法通過觀察不同的k值,然後取得最大離群點得分來處理該問題,但是,仍然需要選擇這些值的上下界。
6. 基於聚類的方法來做異常點檢測
基於聚類的離群點:一個對象是基於聚類的離群點,如果該對象不強屬於任何簇,那麼該對象屬於離群點。
離群點對初始聚類的影響:如果通過聚類檢測離群點,則由於離群點影響聚類,存在一個問題:結構是否有效。這也是k-means演算法的缺點,對離群點敏感。為了處理該問題,可以使用如下方法:對象聚類,刪除離群點,對象再次聚類(這個不能保證產生最優結果)。
優缺點:(1)基於線性和接近線性復雜度(k均值)的聚類技術來發現離群點可能是高度有效的;(2)簇的定義通常是離群點的補,因此可能同時發現簇和離群點;(3)產生的離群點集和它們的得分可能非常依賴所用的簇的個數和數據中離群點的存在性;(4)聚類演算法產生的簇的質量對該演算法產生的離群點的質量影響非常大。
7. 專門的離群點檢測
其實以上說到聚類方法的本意是是無監督分類,並不是為了尋找離群點的,只是恰好它的功能可以實現離群點的檢測,算是一個衍生的功能。
『貳』 異常值的判斷處理
檢驗批中異常數據的判斷處理
1、依據標准
《計數抽樣檢驗程序》(GB2828)、《正態樣本異常值的判斷和處理》(GB4883)。
2、異常值定義
異常值是指樣本中的個別值,其數值明顯偏離它(或他們)所屬樣本的其餘觀測值。
3、異常值的種類
(1)可能是總體固有的隨機變異性的極端現,屬同一總體;
(2)可能是試驗條件和方法的偶然偏離,不屬同一總體。
4、判斷異常值的統計學原則
(1)上側情形:異常值為高端值;
(2)下側情形:異常值為低端值;
(3)雙側情形:異常值在兩端可能出現極端值。
5、判斷異常值的規則:
(1)標准差已知——奈爾(Nair)檢驗法;
(2)標准差未知——格拉布斯(Grubbs)檢驗法和狄克遜(Dixon)檢驗法。
6、格拉布斯(Grubbs)檢驗法
(1)計算統計量
μ=(X1+X2+…+Xn)/n
s=(∑(Xi-μ)/(n-1))½(i=1,2…n)
Gn=(X(n)-μ)/s
式中μ——樣本平均值;
s——樣本標准差;
Gn——格拉布斯檢驗統計量。
(2)確定檢出水平α,查表(見GB4883)得出對應n,α的格拉布斯檢驗臨界值G1-α(n)。
(3)當Gn>G1-α(n),則判斷Xn為異常值,否則無異常值。
(4)給出剔除水平α』的G1-α』(n),當當Gn>G1-α』(n)時,Xn為高度異常值,應剔除。
三、格拉布斯檢驗法在回彈法檢測砼強度中的應用
將測區混凝土強度換算值按從小到大的順序排列f1、f2、…fn,計算格拉布斯檢驗統計量:
Gn=(fn-m)/s
Gn』=(m-f1)/s
式中m——測區混凝土強度換算值的平均值;
s——測區混凝土強度標准差。
取檢出水平α為5%,剔除水平α』為1%,按雙側情形檢驗,從附表中查得檢出水平α對應格拉布斯檢驗臨界值G0.975,剔除水平α』對應格拉布斯檢驗臨界值G0.995。
若Gn>Gn』,且Gn>G0.975,則判斷fn為異常值,否則,判斷無異常值;
若Gn>Gn』,且Gn>G0.995,則判斷fn為高度異常值,可考慮剔除;
若Gn』>Gn,且Gn』>G0.975,則判斷f1為異常值,否則,判斷無異常值;
若Gn』>Gn,且Gn』>G0.995,則判斷f1為高度異常值,可考慮剔除;
分析異常值出現原因,判斷異常值是否舍棄。不得隨意捨去異常值,應檢查異常值出現是否系材料或施工質量變化等原因所致。
若檢出了一個異常值,對除去已檢出異常值後餘下得數值繼續用格拉布斯檢驗法檢驗,直到不能檢出異常值為止。
『叄』 有哪些比較好的做異常值檢測的方法
在回彈法檢測砼強度中,按批抽樣檢測的測區數量往往很多,這就不可避免出現較多的檢測異常值,怎樣判斷和處理這些異常值,對於提高檢測結果的准確性意義重大。格拉布斯檢驗法是土木工程中常用的一種檢驗異常值的方法
『肆』 工程測量時,如何用格拉布斯准則剔除異常值
在做測量不確定度的評定時,對於測量結果進行數據處理之前,往往要進行異常值的剔除工作。超出在規定條件下預期的誤差叫做異常值。產生異常值的原因一般是由於疏忽、失誤或突然發生的不該發生的原因造成的,如讀錯、記錯、儀器示值突然跳動、突然震動、操作失誤等。所以必須在計算測量結果及不確定度評定中要考慮異常值的判別和剔除。
異常值的判別方法也叫異常值檢驗法,即:判斷異常值的統計檢驗法。其方法有很多種,例如格拉布斯法、狄克遜法、偏度-峰度法、拉依達法、奈爾法等等。每種方法都有其適用范圍和優缺點。每種統計檢驗法都會犯錯誤1和錯誤2。但是有人做過統計,在所有方法中,格拉布斯法犯這兩種錯誤的概率最小,所以本文介紹如何使用格拉布斯法來剔除異常值,其判別步驟如下:
1、假設現在有一組測量數據為:例如測量10次(n=10),獲得以下數據:8.2、5.4、14.0、7.3、4.7、9.0、6.5、10.1、7.7、6.0。
2、排列數據:將上述測量數據按從小到大的順序排列,得到4.7、5.4、6.0、6.5、7.3、7.7、8.2、9.0、10.1、14.0。可以肯定,可疑值不是最小值就是最大值。
3、計算平均值x-和標准差s:x-=7.89;標准差s=2.704。計算時,必須將所有10個數據全部包含在內。
4、計算偏離值:平均值與最小值之差為7.89-4.7=3.19;最大值與平均值之差為14.0-7.89=6.11。
5、確定一個可疑值:比較起來,最大值與平均值之差6.11大於平均值與最小值之差3.19,因此認為最大值14.0是可疑值。
6、計算Gi值:Gi=(xi-x- )/s;其中i是可疑值的排列序號——10號;因此G10=( x10-x- )/s=(14.0-7.89)/2.704=2.260。由於 x10-x-是殘差,而s是標准差,因而可認為G10是殘差與標准差的比值。下面要把計算值Gi與格拉布斯表給出的臨界值GP(n)比較,如果計算的Gi值大於表中的臨界值GP(n),則能判斷該測量數據是異常值,可以剔除。但是要提醒,臨界值GP(n)與兩個參數有關:檢出水平α (與置信概率P有關)和測量次數n (與自由度f有關)。
7、定檢出水平α:如果要求嚴格,檢出水平α可以定得小一些,例如定α=0.01,那麼置信概率P=1-α=0.99;如果要求不嚴格,α可以定得大一些,例如定α=0.10,即P=0.90;通常定α=0.05,P=0.95。
8、查格拉布斯表獲得臨界值:根據選定的P值(此處為0.95)和測量次數n(此處為10),查格拉布斯表,橫豎相交得臨界值G95(10)=2.176。
9、比較計算值Gi和臨界值G95(10):Gi=2.260,G95(10)=2.176,Gi>G95(10)。
10、判斷是否為異常值:因為Gi>G95(10),可以判斷測量值14.0為異常值,將它從10個測量數據中剔除。
11、餘下數據考慮:剩餘的9個數據再按以上步驟計算,如果計算的Gi>G95(9),仍然是異常值,剔除;如果Gi<G95(9),不是異常值,則不剔除。本例餘下的9個數據中沒有異常值。
『伍』 spss 如何做異常點的檢驗
異常點。即:異常值
Spss中異常值檢查方法如下:
檢查異常值方法1:
最常用的方法就是對變數進行排序,這也是最簡單的方法。排序後對照最大值和最小值、全距等統計量可以看出數據的離群狀況。
檢查異常值方法2:
散點圖的優勢就在於直觀的呈現兩兩變數間的關系,尤其在兩變數間的線性關聯比較強的時候,如果有離群值,圖形偵察的結果會很明顯,不過(也包括矩陣散點等圖形)其局限在於,其本質還是變數間的兩兩間的關系,更多的多維信息的提供還是需要經驗去判斷。
檢查異常值方法3:
箱體圖為我們提供了數據百分位數的概念,例如四分位數(25%和75%)是將該變數分成約4個部分,分別提供了數據不同分位點附件的離散性,而且同時提供描述數據集中性的中位數,這樣在中間50%的數據上提供的信息將是異常豐富的。
檢查異常值方法4:
在主要統計建模過程中大多會提供異常值或極端值的診斷,例如距離的測算:cook距離、杠桿值等;影響統計量:DfBeta、協方差比率等。它們均有相應的經驗上的判斷標准,如果有些指標沒有相應的判斷異常值的標准,則可以通過排序的方式,找到其相對大小。
檢查異常值方法5:
標識異常個案,這里提供的是統計建模的方式偵查異常個案(注意它的結果有可能和我們其他方式偵查的結果有出處),這種方法主要通過兩步聚類的思想,找到不同個案間的相似性,通過對所在類別的評價計算出異常索引,然後找到對應的ID號,則該個案可能為異常值,至於對這些異常個案怎麼處理,分析人員作出何種決定,這個最好結合專業背景綜合判斷後續的處理方法。
檢查異常值方法6:
如果涉及的是時序數據,控制圖是不錯的選擇,在控制規則里提供了異常豐富的偵查異常個案的選項。
當然其他過程里也有一些細節的處理,例如,排列圖、誤差條形圖、可視離散化、缺失值診斷、數據驗證過程等。
『陸』 如何剔除數據中的異常值
剔除數據中的異常值的方法:
一、異常值檢測
異常值的檢驗有很多種方法,最常見的是圖示法,也有使用分析方法進行探索。
箱盒圖:實驗研究時經常使用,非常直觀的展示出異常數據。
散點圖:研究X和Y的關系時,可直觀展示查看是否有異常數據。
描述分析:可通過最大最小值等各類指標大致判斷數據是否有異常。
其它:比如結合正態分布圖,頻數分析等判斷是否有異常值。
二、異常值判定
上述已經說明異常值會帶來嚴重的影響,扭曲數據結論等。那麼首先需要設定異常值的標准,然後再對其進行處理。異常值的判定標准並不統一,更多是通過人為標准進行設定,SPSSAU提供以下幾類判定規則:
1、設置為Null值;此類處理最簡單,而且絕大多數情況下均使用此類處理;直接將異常值「幹掉」,相當於沒有該異常值。如果異常值不多時建議使用此類方法。
2、填補;如果異常值非常多時,則可能需要進行填補設置,SPSSAU共提供平均值,中位數,眾數和隨機數共四種填補方式。建議使用平均值填補方式。
『柒』 剔除「異常值」的一般原則是啥
異常值(outlier)是指一組測定值中與平均值的偏差超過兩倍標准差的測定值,與平均值的偏差超過三倍標准差的測定值,稱為高度異常的異常值。異常值outlier:一組測定值中與平均值的偏差超過兩倍標准差的測定值。與平均值的偏差超過三倍標准差的測定值,稱為高度異常的異常值。在處理數據時,應剔除高度異常的異常值。異常值是否剔除,視具體情況而定。在統計檢驗時,指定為檢出異常值的顯著性水平α=0.05,稱為檢出水平;指定為檢出高度異常的異常值的顯著性水平α=0.01,稱為舍棄水平,又稱剔除水平(reject level)。異常值是指一組測定值中與平均值的偏差超過兩倍標准差的測定值。與平均值的偏差超過三倍標准差的測定值,稱為高度異常的異常值。在處理數據時,應剔除高度異常的異常值。異常值是否剔除,視具體情況而定。在統計檢驗時,指定為檢出異常值的顯著性水平α=0.05,稱為檢出水平;指定為檢出高度異常的異常值的顯著性水平α=0.01,稱為舍棄水平,又稱剔除水平(reject level)。標准化數值(Z-score)可用來幫助識別異常值。Z分數標准化後的數據服從正態分布。因此,應用Z分數可識別異常值。我們建議將Z分數低於-3或高於3的數據看成是異常值。這些數據的准確性要復查,以決定它是否屬於該數據集。肖維勒准則法(
Chauvenet):經典方法,改善了拉依達准則,過去應用較多,但它沒有固定的概率意義,特別是當測量數據值n無窮大時失效。
『捌』 異常值是指什麼請列舉1種識別連續型變數異常值的方法
可以選擇以下方法。 用線性回歸的辦法求得某一點到直線最遠,去除這一點即可。 PS:線性回歸是利用數理統計中的回歸分析,來確定兩種或兩種以上變數間相互依賴的定量關系的一種統計分析方法,運用十分廣泛。分析按照自變數和因變數之間的關系類
『玖』 如何檢測業務數據中的異常
處理異常值
異常值的定義是與均值的偏差超過兩倍標准,但是在臟數據中,異常值的情況不止這一種:
1)比如一列數據你打開看全部是數字,當你把它當數值型處理,它會報錯;那就得仔細查找原因,遇到比較多的情況是一列數字中夾雜了幾個奇怪的字元串或者符號等元素,如果幾萬條數據中只有一兩個這種字元,即使認真從前到後仔細查看也很難發現還浪費大量時間,效率極低。
還有一種情況比較常見,就是看起來是數字,實際上都是字元串的形式,但是以表格查看的時候是看不到字元串的引號;這兩種情況可以通過查看特徵類型來提前發現,在python中用type()或者dtypes()函數,兩者使用對象有差別,可自行了解;
2)幾種常用異常值檢測方法:
3σ探測方法
3σ探測方法的思想其實就是來源於切比雪夫不等式。
對於任意ε>0,有:
當時,如果總體為一般總體的時候,統計數據與平均值的離散程度可以由其標准差反映,因此有:
一般所有數據中,至少有3/4(或75%)的數據位於平均2個標准差范圍內。
所有數據中,至少有8/9(或88.9%)的數據位於平均數3個標准差范圍內。
所有數據中,至少有24/25(或96%)的數據位於平均數5個標准差范圍內。
所以如果我們一般是把超過三個離散值的數據稱之為異常值。這個方法在實際應用中很方便的使用,但是他只有在單個屬性的情況下才適用。
z-score
Z-score是一維或低維特徵空中的參數異常檢測方法。該技術假定數據是高斯分,異常值是分布尾部的數據點,因此遠離數據的平均值。距離的遠近取決於使用公式計算的歸一化數點z i的設定閾值Zthr:
Zthr值一般設置為2.5、3.0和3.5。該技術是使用KNIME工作流中的行過濾器節點實現的。
這種異常值處理需要結合最終需求來決定怎麼處理,常見的是不處理或者按缺失值的方法處理,但是在實際場景中,異常值有時候會有非常突出的表現,比如在現金貸業務中,異常值中的壞賬率遠高於整體壞賬水平或其他區間壞賬水平,這時候異常值就得保留並作為決策閾值的參考值。
IQR
觀察箱型圖,或者通過IQR(InterQuartile Range)計算可以得到數據分布的第一和第四分位數,異常值是位於四分位數范圍之外的數據點。
這個方法真的很簡單,因為只需要給數據排個序就行了,顯然過於籠統,但在實際場景中,觀察箱型圖仍然是一個很好的探索數據分布的方法。
畢竟,所有復雜的探索,都是從最開始簡單的探索一步步得來的嘛!