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

Python中處理無效數(shù)據(jù)的詳細(xì)教程

 更新時(shí)間:2023年06月04日 11:20:39   作者:艾派森  
無效數(shù)據(jù)是指不符合數(shù)據(jù)收集目的或數(shù)據(jù)收集標(biāo)準(zhǔn)的數(shù)據(jù),這些數(shù)據(jù)可能來自于不準(zhǔn)確的測量、缺失值、錯(cuò)誤標(biāo)注、虛假的數(shù)據(jù)源或其他問題,本文就將帶大家學(xué)習(xí)Python中如何處理無效數(shù)據(jù),感興趣的同學(xué)可以跟著小編一起來學(xué)習(xí)

1.無效數(shù)據(jù)的概念

無效數(shù)據(jù)是指不符合數(shù)據(jù)收集目的或數(shù)據(jù)收集標(biāo)準(zhǔn)的數(shù)據(jù)。這些數(shù)據(jù)可能來自于不準(zhǔn)確的測量、缺失值、錯(cuò)誤標(biāo)注、虛假的數(shù)據(jù)源或其他問題。無效數(shù)據(jù)可能會對數(shù)據(jù)分析結(jié)果產(chǎn)生誤導(dǎo),因此需要在數(shù)據(jù)分析之前進(jìn)行過濾和處理。

無效數(shù)據(jù)的類型包括但不限于以下幾種:

  • 缺失值:缺失值是指在數(shù)據(jù)集中沒有收集到足夠的信息來完全確定其值的數(shù)據(jù)點(diǎn)。缺失值可以是由于數(shù)據(jù)收集過程中的誤差、數(shù)據(jù)源的不確定性、數(shù)據(jù)點(diǎn)之間的相互作用等原因產(chǎn)生的。在數(shù)據(jù)分析中,缺失值可能會對數(shù)據(jù)集的質(zhì)量和模型的準(zhǔn)確性產(chǎn)生負(fù)面影響。
  • 重復(fù)值:重復(fù)值是指在數(shù)據(jù)集中重復(fù)出現(xiàn)的數(shù)據(jù)點(diǎn)。在數(shù)據(jù)集中,每個(gè)數(shù)據(jù)點(diǎn)都應(yīng)該是唯一的,即不存在兩個(gè)相同的數(shù)據(jù)點(diǎn)。重復(fù)值可能會對數(shù)據(jù)分析和建模產(chǎn)生負(fù)面影響,因?yàn)樗鼈兛赡軙谏w數(shù)據(jù)集中的重要信息。
  • 異常值:異常值是指在數(shù)據(jù)集中偏離平均值或常見值的數(shù)據(jù)點(diǎn)。異常值可以是由于數(shù)據(jù)收集過程中的誤差、數(shù)據(jù)源的不確定性、數(shù)據(jù)點(diǎn)之間的相互作用等原因產(chǎn)生的。異常值可能會對數(shù)據(jù)分析和建模產(chǎn)生負(fù)面影響,因?yàn)樗鼈兛赡軙谏w數(shù)據(jù)集中的重要信息,或者導(dǎo)致模型產(chǎn)生錯(cuò)誤的結(jié)論。

2.無效數(shù)據(jù)的處理方法

2.1缺失值處理

缺失值處理是指在數(shù)據(jù)分析過程中,針對數(shù)據(jù)集中存在缺失值的數(shù)據(jù)點(diǎn)進(jìn)行的處理和重新處理。缺失值處理的目的是消除缺失值對數(shù)據(jù)集的影響,提高數(shù)據(jù)集的質(zhì)量和模型的準(zhǔn)確性。

缺失值處理的方法包括以下幾種:

  • 填充均值:將缺失值填充為數(shù)據(jù)集中該值所在列的均值。
  • 填充中位數(shù):將缺失值填充為數(shù)據(jù)集中該值所在列的中位數(shù)。
  • 填充最大最小值:將缺失值填充為數(shù)據(jù)集中該值所在列的最大最小值。
  • 使用其他數(shù)據(jù)點(diǎn)的信息填充缺失值:根據(jù)數(shù)據(jù)集中的其他數(shù)據(jù)點(diǎn)的信息,使用統(tǒng)計(jì)方法或其他算法來填充缺失值。
  • 刪除缺失值:將缺失值所在的數(shù)據(jù)點(diǎn)從數(shù)據(jù)集中刪除。

在處理缺失值時(shí),需要根據(jù)具體情況進(jìn)行決策。填充均值和使用其他數(shù)據(jù)點(diǎn)的信息填充缺失值通常適用于數(shù)據(jù)集中存在少量缺失值的情況。使用其他數(shù)據(jù)點(diǎn)的信息填充缺失值和刪除缺失值適用于數(shù)據(jù)集中存在大量缺失值的情況。此外,缺失值處理的方法也需要考慮到數(shù)據(jù)集的完整性和一致性,以確保數(shù)據(jù)分析和建模的準(zhǔn)確性。

案例演示

首先導(dǎo)入我們演示的數(shù)據(jù)集

import pandas as pd
import numpy as np
import warnings
warnings.filterwarnings('ignore')
data = pd.read_csv('test.csv')
data

a2401dd7a0b948a0beac604c4a697069.png

我們可以使用isnull來查看缺失值個(gè)數(shù)

36d571527f914d31a1f23713252d6655.png

可以看出姓名列是沒有缺失值,年齡列有1個(gè)缺失值,余額列有兩個(gè)缺失值。

1.填充均值 

比如我們想要將年齡列中的缺失值用均值來填充,首先可以看一下年齡列均值是多少

b3793a6316d842fb86049071a6ddbf8e.png

接著使用fillna()函數(shù)填充缺失值,第一個(gè)參數(shù)是填充的值,這里我們使用年齡的均值,也就是前面的24.25,可以使用int()轉(zhuǎn)化為整數(shù),inplace=True表示在原數(shù)據(jù)上修改,默認(rèn)為False。修改之后我們再次查看數(shù)據(jù)發(fā)現(xiàn)年齡列的缺失值已經(jīng)使用均值24填充。 

11b2cac04d30471188a2df9a88f70b4e.png

 2.填充中位數(shù)

還是以年齡為例,查看年齡列的中位數(shù)

0dd2dc4cd92543a0883355994b420b32.png

使用中位數(shù)進(jìn)行填充 

60cec91ade104853b391a00349ef1215.png

3.填充最大最小值

以年齡為例,查看最大最小值

fcd4011066584fb8ad7e9e3ac4e9dada.png

使用最大最小值填充 

9cde39d458244b70bfe726ee40f9b406.png

4.前向填充/后向填充

前向填充就是將缺失值所在位置的上一個(gè)值作為填充值填充缺失數(shù)據(jù)。

后向填充就是將缺失值所在位置的下一個(gè)值作為填充值填充缺失數(shù)據(jù)。

88c8a94e3c134909bf8feb0280c4c7fb.png

但是如果我們在使用后向填充的時(shí)候,最后一個(gè)數(shù)據(jù)是缺失值的話,那么最后一個(gè)缺失值將會遺漏。所以我們可以前向和后向結(jié)合起來就可以做到萬無一失,比如下面的示范:

e9c0ceb5fb31465e8c10ba452d53b561.png

5.刪除缺失值

刪除的話直接使用dropna即可,需要在原數(shù)據(jù)上操作的話可以加個(gè)inplace=True。

5f3be7635e30475dace5896650716bc9.png

2.2重復(fù)值處理

重復(fù)值的話一般都是采取刪除處理,因?yàn)橄嗤臄?shù)據(jù)出現(xiàn)了n次都是沒有意義的,一次就夠。

案例演示

首先導(dǎo)入演示數(shù)據(jù)集

61398e04256543fca932aa7f7353e2e0.png

我們可以先使用any函數(shù)和duplicated函數(shù)來檢測數(shù)據(jù)是否存在重復(fù)值,如果返回結(jié)果為True說明數(shù)據(jù)存在重復(fù)值;如果返回結(jié)果為False說明數(shù)據(jù)不存在重復(fù)值。

2937dc3b00d944f388a23c0170e89be7.png

前面我們導(dǎo)入數(shù)據(jù)的時(shí)候就發(fā)現(xiàn)李四數(shù)據(jù)是有重復(fù)的,所以這里檢測的結(jié)果為True。刪除的話直接使用drop_duplicates函數(shù)即可。

a35365d5a3f045deb2ac42a54327a251.png

2.3異常值處理

異常值是指在數(shù)據(jù)集中偏離通常模式或規(guī)律的值,可以是正常情況的異常值,也可以是異常情況的異常值。

正常情況的異常值。比如我們想建立居民收入水平的時(shí)候,那些收入極其高或低極端數(shù)據(jù)會影響模型的效果,所以我們一般要進(jìn)行剔除。

異常情況的異常值。比如數(shù)值型變量中出現(xiàn)負(fù)數(shù)或其他不符合常理的值等等。

檢測方法1

使用describe()方法來查看數(shù)值型變量是否存在極端值

15b7754321e64419be2ccb597a856154.png

檢測方法2

通過畫出箱線圖的方式來展示數(shù)據(jù)分布情況

6eb2863489eb4285ab9f1bc6c3598aa2.png

比如上圖中的第五幅圖就明顯存在極端值。

處理的方法就是剔除這些異常數(shù)據(jù),這個(gè)方式很靈活。比如前面我們發(fā)現(xiàn)累計(jì)票房一般都是在100000以內(nèi),卻出現(xiàn)了700000的極端數(shù)據(jù),我們就可以采取以下方式挑選出正常數(shù)據(jù):

a346c7f00e2843e99a7562706bc920a8.png

如果我們有多個(gè)條件的話可以使用()和&/|字符來結(jié)合使用,&表示and交集的意思,|表示or并集的意思。比如下圖我們就挑選出累計(jì)票房小于100000并且場均人次小于100的數(shù)據(jù):

3f23dc324d81424ea9508fc69b0349b5.png

3.如何避免無效數(shù)據(jù)?

那我覺得就需要在獲取數(shù)據(jù)的源頭來防止無效數(shù)據(jù)的產(chǎn)生,這樣也能較少花在處理無效數(shù)據(jù)的時(shí)間成本上。獲取數(shù)據(jù)一般就是通過爬蟲獲取或從數(shù)據(jù)庫中提取。爬蟲的話,在編寫代碼時(shí)可以采取適當(dāng)?shù)倪^濾措施,比如某個(gè)字段出現(xiàn)空值或異常值,你可以將這條數(shù)據(jù)不進(jìn)行保存。從數(shù)據(jù)庫提取的話,在sql上加一些去重/去空的語句即可。

以上就是Python中處理無效數(shù)據(jù)的詳細(xì)教程的詳細(xì)內(nèi)容,更多關(guān)于Python 處理無效數(shù)據(jù)的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • python使用fileinput模塊實(shí)現(xiàn)逐行讀取文件的方法

    python使用fileinput模塊實(shí)現(xiàn)逐行讀取文件的方法

    這篇文章主要介紹了python使用fileinput模塊實(shí)現(xiàn)逐行讀取文件的方法,涉及Python中fileinput模塊操作文件的相關(guān)技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-04-04
  • Python3實(shí)現(xiàn)爬取簡書首頁文章標(biāo)題和文章鏈接的方法【測試可用】

    Python3實(shí)現(xiàn)爬取簡書首頁文章標(biāo)題和文章鏈接的方法【測試可用】

    這篇文章主要介紹了Python3實(shí)現(xiàn)爬取簡書首頁文章標(biāo)題和文章鏈接的方法,結(jié)合實(shí)例形式分析了Python3基于urllib及bs4庫針對簡書網(wǎng)進(jìn)行文章抓取相關(guān)操作技巧,需要的朋友可以參考下
    2018-12-12
  • pyqt5中動畫的使用詳解

    pyqt5中動畫的使用詳解

    這篇文章主要介紹了pyqt5中動畫的使用詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • Django后端發(fā)送小程序微信模板消息示例(服務(wù)通知)

    Django后端發(fā)送小程序微信模板消息示例(服務(wù)通知)

    今天小編就為大家分享一篇Django后端發(fā)送小程序微信模板消息示例(服務(wù)通知),具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Python IDLE入門簡介

    Python IDLE入門簡介

    這篇文章主要介紹了Python IDLE入門簡介,具有一定借鑒價(jià)值,需要的朋友可以了解下。
    2017-12-12
  • 詳細(xì)介紹Python中的set集合

    詳細(xì)介紹Python中的set集合

    本文詳細(xì)介紹了Python中set集合的基本概念和詳細(xì)用法,希望對讀者朋友們有所幫助。需要的朋友可以參考下面具體的文章內(nèi)容
    2021-09-09
  • 淺談Django 頁面緩存的cache_key是如何生成的

    淺談Django 頁面緩存的cache_key是如何生成的

    這篇文章主要介紹了Django 頁面緩存的cache_key是如何生成的,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • Python實(shí)現(xiàn)畫圖軟件功能方法詳解

    Python實(shí)現(xiàn)畫圖軟件功能方法詳解

    這篇文章主要介紹了 Python實(shí)現(xiàn)畫圖軟件功能方法詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • python爬蟲爬取快手視頻多線程下載功能

    python爬蟲爬取快手視頻多線程下載功能

    這篇文章主要介紹了python爬蟲爬取快手視頻多線程下載功能,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下
    2018-02-02
  • Python實(shí)現(xiàn)的百度站長自動URL提交小工具

    Python實(shí)現(xiàn)的百度站長自動URL提交小工具

    這篇文章主要介紹了Python實(shí)現(xiàn)的百度站長自動URL提交小工具,主要難點(diǎn)在驗(yàn)證碼識別部分,研究驗(yàn)證碼識別的朋友可以參考下
    2014-06-06

最新評論