您好,登錄后才能下訂單哦!
小編給大家分享一下pandas怎樣去掉、過濾數據集中的某些值或者某些行,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
摘要在進行數據分析與清理中,我們可能常常需要在數據集中去掉某些異常值。具體來說,看看下面的例子。
0.導入我們需要使用的包
import pandas as pd
pandas是很常用的數據分析,數據處理的包。anaconda已經有這個包了,純凈版python的可以自行pip安裝。
1.去掉某些具體值
數據集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的。兩者取邏輯關系 與(&)
2.過濾掉某個范圍的值
上面我們是了解了如何取掉某個具體值,下面,我們要看看如何過濾掉某個范圍的值。對于數據集df,我們想過濾掉creativeID(第一列)中ID值大于10000的樣本。
df[df['creativeID']<=10000]
另外,如果要考慮多列的話,其實和上面一樣,將兩種情況做邏輯與(&)就可以,不過值得注意的是,每個條件要用括號()括起來。
以上是“pandas怎樣去掉、過濾數據集中的某些值或者某些行”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。