詳解pandas如何去掉、過濾數(shù)據(jù)集中的某些值或者某些行?
摘要在進行數(shù)據(jù)分析與清理中,我們可能常常需要在數(shù)據(jù)集中去掉某些異常值。具體來說,看看下面的例子。
0.導(dǎo)入我們需要使用的包
import pandas as pd
pandas是很常用的數(shù)據(jù)分析,數(shù)據(jù)處理的包。anaconda已經(jīng)有這個包了,純凈版python的可以自行pip安裝。
1.去掉某些具體值
數(shù)據(jù)集df中,對于屬性appPlatform(最后一列),我們想刪除掉取值為2的那些樣本。如何做?非常簡單。
import pandas as pd
df[(True-df['appPlatform'].isin([2]))]
當然,有時候我們需要去掉不止一個值,這個時候只需要在isin([])的列表中添加。更具體來說,例如,對于appID這個屬性,我們想去掉appID=278和appID=382的樣本。
df[(True-df['appID'].isin([278,382]))]
另外,我們有時候并不只是考慮某一列,還需要考慮另外若干列的情況。例如,我們需要過濾掉appPlatform=2而且appID=278和appID=382的樣本呢?非常簡單。
df[(True-df['appID'].isin([278,382]))&(True-df['appPlatform'].isin([2]))]
其實,在這里我們看到,就是由兩部分組成的,第一部分就是appID中等于278和382的,另外一部分就是appPlatform中等于2的。兩者取邏輯關(guān)系 與(&)
2.過濾掉某個范圍的值
上面我們是了解了如何取掉某個具體值,下面,我們要看看如何過濾掉某個范圍的值。對于數(shù)據(jù)集df,我們想過濾掉creativeID(第一列)中ID值大于10000的樣本。
df[df['creativeID']<=10000]
另外,如果要考慮多列的話,其實和上面一樣,將兩種情況做邏輯與(&)就可以,不過值得注意的是,每個條件要用括號()括起來。
以上所述是小編給大家介紹的pandas如何去掉、過濾數(shù)據(jù)集中的某些值或者某些行詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
Python中工作日類庫Busines Holiday的介紹與使用
Python語言是通過區(qū)分類庫的方式來劃分功能。用戶根據(jù)自身的需要加載合適的類庫,來完成需要的功能。下面這篇文章主要給大家介紹了關(guān)于Python中工作日類庫Busines Holiday使用的相關(guān)資料,需要的朋友可以參考借鑒。2017-07-07Python socket實現(xiàn)的文件下載器功能示例
這篇文章主要介紹了Python socket實現(xiàn)的文件下載器功能,結(jié)合實例形式分析了Python使用socket模塊實現(xiàn)的文件下載器客戶端與服務(wù)器端相關(guān)操作技巧,需要的朋友可以參考下2019-11-11Python實現(xiàn)將DNA序列存儲為tfr文件并讀取流程介紹
為什么要在實驗過程中存儲文件,因為有些算法的內(nèi)容存在一些重復(fù)計算的步驟,這些步驟往往消耗很大一部分時間,在有大量參數(shù)的情況時,需要在多次不同參數(shù)的情況下重復(fù)試驗,因此可以考慮將一些不涉及參數(shù)運算的部分結(jié)果存入文件中2022-09-09