1. 建立一個dataframe
1
|
c = pd.dataframe({ 'a' :[ 'dog' ] * 3 + [ 'fish' ] * 3 + [ 'dog' ], 'b' :[ 10 , 10 , 12 , 12 , 14 , 14 , 10 ]}) |
2. 判斷是否有重復項
用duplicated( )函數判斷
1
|
c.duplicated() |
3. 有重復項,則可以用drop_duplicates()移除重復項
1
|
c.drop_duplicates() |
4. duplicated( )和drop_duplicates( )方法是以默認的方式判斷全部的列(上面的例子中是看兩個變量a和b是否都是重復出現)。
我們也可以對特定的列進行重復項判斷。
1
2
3
|
c.duplicated([ 'a' ]) c.drop_duplicates([ 'a' ]) c.duplicated([ 'b' ]) c.drop_duplicates([ 'b' ]) |
5. norepeat_df = df.drop_duplicates(subset=['a_id', 'b_id'], keep='first')
#上面的命令去掉unit_id和kpi_id列中重復的行,并保留重復出現的行中第一次出現的行
補充:
- 當keep=false時,就是去掉所有的重復行
- 當keep=‘first'時,就是保留第一次出現的重復行
- 當keep='last'時就是保留最后一次出現的重復行。
(注意,這里的參數是字符串,要加引號?。。。?/p>
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持服務器之家。
原文鏈接:https://blog.csdn.net/qq_40981268/article/details/86498762