欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python使用箱型圖剔除異常值的實現方法

 更新時間:2023年05月09日 16:25:13   作者:bug嘛我經常寫  
python中的箱線圖可用于分析數據中的異常值,下面這篇文章主要給大家介紹了關于python使用箱型圖剔除異常值的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下

箱型圖

將一組數據從大到小排列,分別計算出,

  • 上四分位數??3: 75%分位點所對應的值
  • 中位數??2:         50%分位點對應的值
  • 下四分位數??1: 25%分位點所對應的值
  • 上邊緣(須):            Q3+1.5(Q3-Q1)
  • 下邊緣(須):            Q1-1.5(Q3-Q1)

數據??的合理范圍為:

??1 − 1.5(??3 − ??1)  ≤  ??  ≤  ??3 + 1.5(??3 − ??1)

        和使用3σ準則剔除異常值相比,箱線圖不需要數據服從正態(tài)分布,能真實直觀的表現數據形狀;箱線圖以四分位數和四分位距作為判斷異常值的標準,四分位數具有一定的耐抗性,多達 25%的數據可以變得任意遠而不會很大地擾動四分位數,使得異常值無法對數據形狀造成巨大影響,因此箱形圖識別異常值的結果比較客觀。

pandas.DataFrame.quantile

對于dataframe形式的數據,可以直接調用DataFrame.quantile(),以快速計算箱型圖的分位點。

DataFrame.quantile(q=0.5, axis=0, numeric_only=True, interpolation='linear')

參數:

  • q:float or array-like, default 0.5 (50% quantile),0 ≤ q ≤ 1之間的值,即要計算的分位數;
  • axis:{0, 1, ‘index’, ‘columns’}, default 0,對于行,等于0或“索引”,對于列,等于1或“列”;
  • numeric_only:bool, default True,如果為False,則還將計算日期時間和時間增量數據的分位數;
  • interpolation:{‘linear’, ‘lower’, ‘higher’, ‘midpoint’, ‘nearest’},當所需分位數位于兩個數據點i和j之間時,此可選參數指定要使用的插值方法。

返回:(Series or DataFrame)

  • 如果q是數組,則將返回DataFrame,其中index為q,列為self的列,值為分位數。
  • 如果q為float,則index是self的列,值為分位數

示例:

import pandas as pd
import numpy as np
 
# 生成數據
d = pd.DataFrame({"SO2":[-1000, 5, 5, 10, 9, 12, 11, 100],
                     "NO2":[12, 52, 14, 10, 10, 23, 15, 9],
                     "CO2":[15, 23, 0, 24, 25, 7, 4, 715],
                     "O3":[17, 23, 33, 10000, 11, 47, 5, 22] })

q 為 float:

q 為 數組: 

代碼實現 

# 箱型圖判斷異常點
def box_outlier(data):
    df = data.copy(deep=True)
    out_index = []
    for col in df.columns:             # 對每一列分別用箱型圖進行判斷
        Q1 = df[col].quantile(q=0.25)       # 下四分位
        Q3 = df[col].quantile(q=0.75)       # 上四分位
        low_whisker = Q1 - 1.5 * (Q3 - Q1)  # 下邊緣
        up_whisker = Q3 + 1.5 * (Q3 - Q1)   # 上邊緣
        # 尋找異常點,獲得異常點索引值,刪除索引值所在行數據
        rule = (df[col] > up_whisker) | (df[col] < low_whisker)  
        out = df[col].index[rule]
        out_index += out.tolist()  
    df.drop(out_index, inplace=True)
    return df

使用前文創(chuàng)建的數據

box_outlier(d)

參考

pandas.DataFrame.quantile

【PYTHON 機器學習】正態(tài)分布檢驗以及異常值處理3Σ原則

總結

到此這篇關于python使用箱型圖剔除異常值的文章就介紹到這了,更多相關python箱型圖剔除異常值內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Pytorch平均池化nn.AvgPool2d()使用方法實例

    Pytorch平均池化nn.AvgPool2d()使用方法實例

    平均池化層,又叫平均匯聚層,下面這篇文章主要給大家介紹了關于Pytorch平均池化nn.AvgPool2d()使用方法的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-02-02
  • Python3.4學習筆記之列表、數組操作示例

    Python3.4學習筆記之列表、數組操作示例

    這篇文章主要介紹了Python3.4列表、數組操作,結合實例形式分析了Python3.4列表的創(chuàng)建、元素追加、刪除、排序等相關操作技巧,需要的朋友可以參考下
    2019-03-03
  • django在保存圖像的同時壓縮圖像示例代碼詳解

    django在保存圖像的同時壓縮圖像示例代碼詳解

    這篇文章主要介紹了django在保存圖像的同時壓縮圖像,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • python代理工具mitmproxy使用指南

    python代理工具mitmproxy使用指南

    這篇文章主要介紹了python mitmproxy 使用指南,mitmproxy 可以用來攔截、修改、保存 HTTP/HTTPS 請求。以命令行終端形式呈現,類似于 Chrome 瀏覽器開發(fā)者模式的可視化工具,需要的朋友可以參考下
    2019-07-07
  • 升級anaconda中python到3.10版本的簡單步驟

    升級anaconda中python到3.10版本的簡單步驟

    anaconda是一個非常好用的python發(fā)行版本,其中包含了大部分常用的庫,下面這篇文章主要給大家介紹了關于升級anaconda中python到3.10版本的簡單步驟,需要的朋友可以參考下
    2024-03-03
  • 利用Python實現在同一網絡中的本地文件共享方法

    利用Python實現在同一網絡中的本地文件共享方法

    今天小編就為大家分享一篇利用Python實現在同一網絡中的本地文件共享方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • 詳解pandas DataFrame的查詢方法(loc,iloc,at,iat,ix的用法和區(qū)別)

    詳解pandas DataFrame的查詢方法(loc,iloc,at,iat,ix的用法和區(qū)別)

    這篇文章主要介紹了詳解pandas DataFrame的查詢方法(loc,iloc,at,iat,ix的用法和區(qū)別),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-08-08
  • Python的bit_length函數來二進制的位數方法

    Python的bit_length函數來二進制的位數方法

    今天小編就為大家分享一篇Python的bit_length函數來二進制的位數方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • python:解析requests返回的response(json格式)說明

    python:解析requests返回的response(json格式)說明

    這篇文章主要介紹了python:解析requests返回的response(json格式)說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • python wxpython 實現界面跳轉功能

    python wxpython 實現界面跳轉功能

    wxpython沒提供界面跳轉的方式,所以就需要借助threading模塊,本文給大家分享python wxpython 實現界面跳轉功能,感興趣的朋友跟隨小編一起看看吧
    2019-12-12

最新評論