中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

你會用Python做數(shù)據(jù)預(yù)處理嗎?

2021-02-08    分類: 網(wǎng)站建設(shè)

在拿到一份數(shù)據(jù)準(zhǔn)備做挖掘建模之前,首先需要進行初步的數(shù)據(jù)探索性分析(你愿意花十分鐘系統(tǒng)了解數(shù)據(jù)分析方法嗎?),對數(shù)據(jù)探索性分析之后要先進行一系列的數(shù)據(jù)預(yù)處理步驟。因為拿到的原始數(shù)據(jù)存在不完整、不一致、有異常的數(shù)據(jù),而這些“錯誤”數(shù)據(jù)會嚴(yán)重影響到數(shù)據(jù)挖掘建模的執(zhí)行效率甚至導(dǎo)致挖掘結(jié)果出現(xiàn)偏差,因此首先要數(shù)據(jù)清洗。數(shù)據(jù)清洗完成之后接著進行或者同時進行數(shù)據(jù)集成、轉(zhuǎn)換、歸一化等一系列處理,該過程就是數(shù)據(jù)預(yù)處理。一方面是提高數(shù)據(jù)的質(zhì)量,另一方面可以讓數(shù)據(jù)更好的適應(yīng)特定的挖掘模型,在實際工作中該部分的內(nèi)容可能會占整個工作的70%甚至更多。

01、缺失值處理

由于人員錄入數(shù)據(jù)過程中或者存儲器損壞等原因,缺失值在一份數(shù)據(jù)中或多或少存在,所以首先就需要對缺失值進行處理,缺失值處理總的原則是:使用最可能的值代替缺失值,使缺失值與其他數(shù)值之間的關(guān)系保持大。具體的常用方法如下:

  • 刪除缺失值(缺失值占比很小的情況)
  • 人工填充 (數(shù)據(jù)集小,缺失值少)
  • 用全局變量填充(將缺失值填充一常數(shù)如“null”)
  • 使用樣本數(shù)據(jù)的均值或中位數(shù)填充
  • 用插值法(如拉格朗日法、牛頓法)

Python缺失值處理實例代碼:

a、判斷刪除缺失值- -isnull,notnull

  • 判斷缺失值可以用來計算缺失值占比整個數(shù)據(jù)的大小,如果占比很小可以刪除缺失值。

b、填充替換缺失值--fillna

  • 如果缺失值不可以占比很多,就不能能夠輕易的刪除缺失值,可以用上述的插值方法填充缺失值。

c、核心代碼和結(jié)果圖:

02、異常值處理

異常值是數(shù)據(jù)集中偏離大部分?jǐn)?shù)據(jù)的數(shù)據(jù)。從數(shù)據(jù)值上表現(xiàn)為:數(shù)據(jù)集中與平均值的偏差超過兩倍標(biāo)準(zhǔn)差的數(shù)據(jù),其中與平均值的偏差超過三倍標(biāo)準(zhǔn)差的數(shù)據(jù)(3σ原則),稱為高度異常的異常值。

  • 異常值分析方法
  • 3σ原則 (數(shù)據(jù)分布為正態(tài)分布)
  • 箱型圖分析(內(nèi)限or外限)。

常用處理方法如下:

  • 直接刪除 (異常值占比小)
  • 暫且保留,待結(jié)合整體模型綜合分析
  • 利用現(xiàn)有樣本信息的統(tǒng)計量填充(均值等)

Python異常值處理實例代碼:

  • 檢驗是否符合正態(tài)分布,符合用3σ原則判斷并處理,核心代碼結(jié)果如下:

2. 當(dāng)不符合正態(tài)分布時可用箱型圖分析處理,核心結(jié)果代碼如下:

你會用Python做數(shù)據(jù)預(yù)處理嗎?

你會用Python做數(shù)據(jù)預(yù)處理嗎?

03、數(shù)據(jù)標(biāo)準(zhǔn)化處理

數(shù)據(jù)的標(biāo)準(zhǔn)化(normalization)是將數(shù)據(jù)按比例縮放,使之落入一個小的特定區(qū)間。在某些比較和評價的指標(biāo)處理中經(jīng)常會用到,去除數(shù)據(jù)的單位限制,將其轉(zhuǎn)化為無量綱的純數(shù)值,便于不同單位或量級的指標(biāo)能夠進行比較和加權(quán),最典型的就是數(shù)據(jù)歸一化處理就是將數(shù)據(jù)統(tǒng)一映射到[0,1]區(qū)間上 。

常用數(shù)據(jù)標(biāo)準(zhǔn)化方法:

  • MIN- MAX標(biāo)準(zhǔn)化(x - x_min)/(x_max-x_min)
  • z-score標(biāo)準(zhǔn)化(x-x_mean)/x_std
  • 小數(shù)定標(biāo)標(biāo)準(zhǔn)化
  • 向量歸一化
  • 線性比例變換法
  • 平均值法
  • 指數(shù)轉(zhuǎn)換法

歸一化的目的:

  • 使得預(yù)處理的數(shù)據(jù)被限定在一定的范圍
  • 消除奇異樣本數(shù)據(jù)導(dǎo)致的不良影響

在大佬Ng的視頻課中聽過一句話,歸一化會加快梯度下降的求解速度。

應(yīng)用場景說明:

  • SVM、線性回歸之類的最優(yōu)化問題需要歸一化,是否歸一化主要在于是否關(guān)心變量取值;
  • 神經(jīng)網(wǎng)絡(luò)需要標(biāo)準(zhǔn)化處理,一般變量的取值在-1到1之間,這樣做是為了弱化某些變量的值較大而對模型產(chǎn)生影響。一般神經(jīng)網(wǎng)絡(luò)中的隱藏層采用tanh激活函數(shù)比sigmod激活函數(shù)要好些,因為tanh雙曲正切函數(shù)的取值[-1,1]之間,均值為0;
  • 在K近鄰算法中,如果不對解釋變量進行標(biāo)準(zhǔn)化,那么具有小數(shù)量級的解釋變量的影響就會微乎其微。

注意:沒有一種數(shù)據(jù)標(biāo)準(zhǔn)化的方法,放在每一個問題,放在每一個模型,都能提高算法精度和加快算法的收斂速度。所以對于不同的問題可能會有不同的歸一化方法。在分類、聚類算法中,需要使用距離來度量相似性的時候、或者使用PCA技術(shù)進行降維的時候,Z-score standardization表現(xiàn)更好。

04、數(shù)據(jù)連續(xù)屬性離散化

一些數(shù)據(jù)挖掘算法,特別是分類算法,要求數(shù)據(jù)是分類屬性形式。常常需要將連續(xù)屬性變換成分類屬性,即連續(xù)屬性離散化。 常用的離散化方法:

  • 等寬法:將屬性值域分成具有相同寬度的區(qū)間,區(qū)間的個數(shù)由數(shù)據(jù)本身的特點決定,或者由用戶指定,類似于制作頻率分布表。
  • 等頻法:將相同數(shù)量的記錄放進每個區(qū)間。
  • 基于聚類分析的方法。 通過分箱離散化、通過直方圖分析離散化、通過聚類、決策樹和相關(guān)分析離散化、標(biāo)稱數(shù)據(jù)的概念分層產(chǎn)生。

05、總結(jié)

本文是筆者在學(xué)習(xí)數(shù)據(jù)分析過程中記錄下來的一些通用的數(shù)據(jù)預(yù)處理步驟,并且用Numpy、Pandas、Matplotlib等實現(xiàn)了每一種處理方法并可視化了處理結(jié)果。

網(wǎng)站名稱:你會用Python做數(shù)據(jù)預(yù)處理嗎?
文章分享:http://www.rwnh.cn/news/99756.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、微信公眾號、App開發(fā)云服務(wù)器、關(guān)鍵詞優(yōu)化軟件開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管
南乐县| 杂多县| 保山市| 平安县| 台南县| 南陵县| 荃湾区| 万载县| 肇东市| 建德市| 敖汉旗| 尚义县| 龙井市| 道真| 宽甸| 滦南县| 塔城市| 毕节市| 英山县| 晋宁县| 唐山市| 永春县| 红桥区| 类乌齐县| 通山县| 无棣县| 彩票| 揭东县| 张家口市| 贡嘎县| 二连浩特市| 马鞍山市| 兰溪市| 囊谦县| 房产| 鸡东县| 威信县| 开化县| 文山县| 江华| 天门市|