python骨灰技巧_Pandas技巧,某骨灰级Pythoner经验总结,呕心沥血!
原標(biāo)題:Pandas技巧,某骨灰級Pythoner經(jīng)驗總結(jié),嘔心瀝血!
Python已迅速發(fā)展為數(shù)據(jù)科學(xué)家必備的編程語言。
python作為一種編程語言提供了更加優(yōu)秀、寬闊的生體系統(tǒng)與深度的科學(xué)計算庫。
在科學(xué)計算庫中,Pandas對數(shù)據(jù)科學(xué)最為有效。Pandas、Scikit-learn幾乎供給了數(shù)據(jù)科學(xué)家所有工具。本文旨在分享Python中數(shù)據(jù)處理的方法。別的,還會分享一些讓你工作可以變得更便捷的技巧。
在學(xué)習(xí)前,提醒一下,如果你有過閱讀Python數(shù)據(jù)挖掘(data exploration)的代碼。有利于大家更好的理解文章內(nèi)容。為了更好地理解,我使用了一個數(shù)據(jù)集來執(zhí)行這些數(shù)據(jù)操作和處理。
數(shù)據(jù)集:我使用了貸款預(yù)測(Loan Prediction)問題的數(shù)據(jù)集。請先下載數(shù)據(jù)集,然后就可以開始了。
第一步
導(dǎo)入模塊、加載數(shù)據(jù)集、搭建Python環(huán)境:
布爾索引
假如說,想由另一列的條件來篩選某一列的值,我們要怎么做?比如,我們想獲取一份完整的沒有畢業(yè)并獲得貸款的女性名單。能夠利用布爾索引實現(xiàn)。
Python代碼:
Apply函數(shù)
Apply是一個我們經(jīng)常會使用到的函數(shù),作用是創(chuàng)建新變量、處理數(shù)據(jù)。當(dāng)我們在利用某些函數(shù)傳遞一個數(shù)據(jù)幀的每一行或列的時候,Apply函數(shù)會返回相應(yīng)的值。不管這個函數(shù)是系統(tǒng)自帶的,還是用戶定義的。
例如,它可以作用于找到任一列、行的缺失值。
利用這個,得到了我們想要的結(jié)果。
注:因為結(jié)果中包含很多行,所以第二個輸出中使用了head()函數(shù)。
填補缺失值
‘fillna()’只要一次就能夠解決:以整列的平均數(shù)、眾數(shù)、中位數(shù)來替換缺失值。基于其各自的眾數(shù)填補出“性別”、“婚姻”、“自由職業(yè)”列的缺失值。
第一步:導(dǎo)入函數(shù)來判斷眾數(shù)
成效前往眾數(shù)和其出現(xiàn)頻次。請注意,眾數(shù)可所以一個數(shù)組,由于高頻的值可能有多個。我們通常默認(rèn)使用第一個:
結(jié)果返回眾數(shù)與它出現(xiàn)的頻率。眾數(shù)也可以是一個數(shù)組,因為高頻的值存在有多個的可能性。那么我們通常默認(rèn)使用第一個:
now,我們可以填補缺失值并用Apply函數(shù)里提到的方法來檢驗,填補缺失值并再次檢查缺失值,是否已經(jīng)確認(rèn)。
透視表
Pandas能夠用來創(chuàng)建MS Excel風(fēng)格的透視表。比如說,在本例中一個關(guān)鍵列是“貸款數(shù)額”有缺失值,能夠根據(jù)“性別”,“婚姻狀況”和“自由職業(yè)”分組后的平均金額來進行替換。 那么“貸款數(shù)額”的各組均值怎么確定呢?
多索引
如果你看到了“填補缺失值”的輸出結(jié)果,它有一個特殊的特征。每一個索引都是由3個值組合構(gòu)成的。這個就是多索引。可以幫我們快速執(zhí)交運算。
從“填補缺失值”的例子中開始,我們有每個組的均值,但還沒有被填補。
這可以使用到如今為止學(xué)習(xí)到的各類技巧來處理,只在缺失貸款值的行中來迭代并再次檢驗確認(rèn)。
關(guān)鍵:
1. 多索引必須在loc里講明的定義分組的索引元組。此元組能夠在函數(shù)中利用到。
2. values[0]這個后綴是必須的,默認(rèn)情況下元素返回的索引和原數(shù)據(jù)框的索引不匹配,直接賦值會報錯。
交叉表
這個函數(shù)作用于獲取數(shù)據(jù)的一個第一“感受”(視圖)。在這里,可以驗證一些基本設(shè)想。比如說,在這個例子中,“信用記錄”被認(rèn)為是最明顯影響貸款狀況。這可以使用交叉表驗證,如下圖所示:
這些數(shù)據(jù)都是取的絕對值,用百分比更直觀。可以利用apply 函數(shù)實現(xiàn):
說到了Pandas的不同函數(shù),一些能夠讓我們在探索Python數(shù)據(jù)和功能設(shè)計上更加舒適的函數(shù)。而且,我們定義了一些通用函數(shù),可以循環(huán)利用,在不同的數(shù)據(jù)集上達到差不多的結(jié)果。
喜歡的話關(guān)注收藏評論轉(zhuǎn)發(fā)比心么么噠!Python學(xué)習(xí)交流企-鵝-裙-588+090+942,裙內(nèi)有大量的項目開發(fā)和新手教學(xué)視頻PDF書籍的千人大群等著你來加入返回搜狐,查看更多
責(zé)任編輯:
總結(jié)
以上是生活随笔為你收集整理的python骨灰技巧_Pandas技巧,某骨灰级Pythoner经验总结,呕心沥血!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JAVA入门级教学之(package和i
- 下一篇: websocket python爬虫_p