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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

数据预处理—数据清洗(2)—异常值(极值)处理

發布時間:2024/3/24 编程问答 58 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数据预处理—数据清洗(2)—异常值(极值)处理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
3.1.2異常值(極值)處理
  • 處于特定分布區域或范圍之外的數據通常會被定義為異常或“噪音”。產生數據“噪音”的原因很多,例如業務運營操作、數據采集問題、數據同步問題等。對異常數據進行處理前,需要先辨別出到底哪些是真正的數據異常。從數據異常的狀態看分為兩種:
    • 由于業務特定運營動作產生的,正常反映業務狀態,而不是數據本身的異常規律。
    • 不是由于特定的業務動作引起的,而是客觀地反映了數據本身分布異常
  • 大多數情況下,異常值都會在數據的預處理過程中被認為是噪音而剔除,以避免其對總體數據評估和分析挖掘的影響。但在以下幾種情況下,我們無須對異常值做拋棄處理。
    • ※異常值由運營活動導致,正常反映了業務運營結果
      • 公司的A商品正常情況下日銷量為1000臺左右。由于昨日舉行優惠促銷活動導致總銷量達到10000臺,由于后端庫存備貨不足導致今日銷量又下降到100臺。在這種情況下,10000臺和100臺都正確地反映了業務運營的結果,而非數據異常案例。
    • ※異常檢測模型
      • 圍繞異常值展開的分析工作,如異常客戶(羊毛黨)識別,作弊流量檢測,信用卡詐騙識別等
    • ※對異常值不敏感的數據模型
      • 如決策樹
  • 處理方式
    • 保留
    • 刪除
    • 用統計量或預測量進行替換
3.1.3異常值(極值)處理API
dataframe.mean() #計算平局值 dataframe.std() #計算標準差
  • 判斷異常值方法:Z-Score

    計算公式 Z = X-μ/σ 其中μ為總體平均值,X-μ為離均差,σ表示標準差。z的絕對值表示在標準差范圍內的原始分數與總體均值之間的距離。當原始分數低于平均值時,z為負,以上為正。

import pandas as pd # 導入pandas庫 # 通過Z-Score方法判斷異常值 df_zscore = df.copy() # 復制一個用來存儲Z-score得分的數據框 cols = df.columns # 獲得數據框的列名 for col in cols: # 循環讀取每列df_col = df[col] # 得到每列的值z_score = (df_col - df_col.mean()) / df_col.std() # 計算每列的Z-score得分df_zscore[col] = z_score.abs() > 2.2 # 判斷Z-score得分是否大于2.2(自定義),如果是則是True,否則為False # 刪除異常值所在的行 df_drop_outlier = df[df_zscore['col1'] == False] print(df_drop_outlier)
  • 異常值處理的關鍵:如何判斷異常
    • 有固定該業務規則的直接利用業務規則
    • 沒有固定業務規則的,可以使用數學模型進行判斷,如正態分布的標準差范圍,分位數法等

總結

以上是生活随笔為你收集整理的数据预处理—数据清洗(2)—异常值(极值)处理的全部內容,希望文章能夠幫你解決所遇到的問題。

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