小編寫這篇文章的主要目的,主要是想給大家做出一個深入解答,解答一下關于Python pandas技術,主要是如何找到數據,然后對其進行刪除,下面小編就給大家進行詳細解答下。
前言
當我們在使用Python pandas處理各種數據的時候,經常性的會遇到一些問題,比如會遇到一些數據重復的問題,這個時候,我們需要做的就是找出產生問題的原因是什么。那么,pandas將會給我們提供兩種比較高效的方法:duplicated()和drop_duplicates()。
一、duplicated()
duplicated()可以被用在DataFrame的三種情況下,分別是pandas.DataFrame.duplicated、pandas.Series.duplicated和pandas.Index.duplicated。他們的用法都類似,前兩個會返回一個布爾值的Series,最后一個會返回一個布爾值的numpy.ndarray。
DataFrame.duplicated(subset=None,keep=‘first’)
subset:默認為None,需要標記重復的標簽或標簽序列
keep:默認為‘first’,如何標記重復標簽
first:將除第一次出現以外的重復數據標記為True
last:將除最后一次出現以外的重復數據標記為True
False:將所有重復的項都標記為True(不管是不是第一次出現)
Series.duplicated(keep=‘first’)
keep:與DataFrame.duplicated的keep相同
Index.duplicated(keep=‘first’)
keep:與DataFrame.duplicated的keep相同
例子:
import pandas as pd df=pd.DataFrame({ 'brand':['Yum Yum','Yum Yum','Indomie','Indomie','Indomie'], 'style':['cup','cup','cup','pack','pack'], 'rating':[4,4,3.5,15,5] }) df
brand style rating
0 Yum Yum cup 4.0
1 Yum Yum cup 4.0
2 Indomie cup 3.5
3 Indomie pack 15.0
4 Indomie pack 5.0
df.duplicated()
0 False
1 True
2 False
3 False
4 False
dtype:bool
df.duplicated(keep='last')
0 True
1 False
2 False
3 False
4 False
dtype:bool
df.duplicated(keep=False)
0 True
1 True
2 False
3 False
4 False
dtype:bool
df.duplicated(subset=['brand'])
0 False
1 True
2 False
3 True
4 True
dtype:bool
關于Index的重復標記:
df=df.set_index('brand')
df
style rating
brand
Yum Yum cup 4.0
Yum Yum cup 4.0
Indomie cup 3.5
Indomie pack 15.0
Indomie pack 5.0
df.index.duplicated()
array([False,True,False,True,True])
二、drop_duplicates()
與duplicated()類似,drop_duplicates()是直接把重復值給刪掉。下面只會介紹一些含義不同的參數。
DataFrame.drop_duplicates(subset=None,keep=‘first’,inplace=False)
subset:與duplicated()中相同
keep:與duplicated()中相同
inplace:與pandas其他函數的inplace相同,選擇是修改現有數據還是返回新的數據
Series.drop_duplicates()相比Series.duplicated()也是多了一個inplace參數,和上訴介紹一樣,Index.drop_duplicates()與Index.duplicated()參數相同就不做贅述。下面是例子:
df=pd.DataFrame({ 'brand':['Yum Yum','Yum Yum','Indomie','Indomie','Indomie'], 'style':['cup','cup','cup','pack','pack'], 'rating':[4,4,3.5,15,5] }) df
brand style rating
0 Yum Yum cup 4.0
1 Yum Yum cup 4.0
2 Indomie cup 3.5
3 Indomie pack 15.0
4 Indomie pack 5.0
df.drop_duplicates()
brand style rating
0 Yum Yum cup 4.0
2 Indomie cup 3.5
3 Indomie pack 15.0
4 Indomie pack 5.0
df.drop_duplicates(inplace=True)
df
brand style rating
0 Yum Yum cup 4.0
2 Indomie cup 3.5
3 Indomie pack 15.0
4 Indomie pack 5.0
到此為止,小編寫的關于pandas內容就為大家介紹到這里了,希望可以為各位讀者帶來幫助。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/127960.html
目錄Numpy簡介Numpy操作集合1、不同維度數據的表示1.1 一維數據的表示1.2 二維數據的表示1.3 三維數據的表示2、 為什么要使用Numpy2.1、Numpy的ndarray具有廣播功能2.2 Numpy數組的性能比Python原生數據類型高3 ndarray的屬性和基本操作3.1 ndarray的基本屬性3.2 ndarray元素類型3.3 創建ndarray的方式3.4 ndarr...
為什么你需要pandas 大家好,今天想和大家分享一下有關pandas的學習新的,我因工作需要,從去年12月開始接觸這個非常好用的包,到現在為止也是算是熟悉了一些,因此發現了它的強大之處,特意想要和朋友們分享,特別是如果你每天和excel打交道,總是需要編寫一些vba函數或者對行列進行groupby啊,merge,join啊之類的,相信我,pandas會讓你解脫的。 好啦,閑話少說,這篇文章的基礎...
摘要:函數將單元格內容以形式呈現。自動評論代碼自動注釋單元格中的選定行,再次命中組合將取消注釋相同的代碼行。如果需要恢復整個已刪除的單元格,請按或撤消刪除單元格。 showImg(https://segmentfault.com/img/remote/1460000019599210); 編譯:小七、蔣寶尚 一些小提示和小技巧可能是非常有用的,特別是在編程領域。有時候使用一點點黑客技術,既可...
摘要:在這個教程中,我們將利用的和包來進行數據清洗。在很多情況下,使用唯一的值作為索引值識別數據字段是非常有幫助的。清洗數據字段到現在為止,我們移除了不必要的列并改變了我們的索引變得更有意義。 作者:xiaoyu微信公眾號:Python數據科學知乎:Python數據分析師 數據科學家花了大量的時間清洗數據集,并將這些數據轉換為他們可以處理的格式。事實上,很多數據科學家聲稱開始獲取和清洗數據...
閱讀 919·2023-01-14 11:38
閱讀 891·2023-01-14 11:04
閱讀 750·2023-01-14 10:48
閱讀 2039·2023-01-14 10:34
閱讀 956·2023-01-14 10:24
閱讀 835·2023-01-14 10:18
閱讀 506·2023-01-14 10:09
閱讀 583·2023-01-14 10:02