欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

pandas的drop_duplicates無法去重問題解決

 更新時間:2024年03月28日 11:25:26   作者:羸弱的窮酸書生  
在我們利用Pandas進行數據清洗的時候,往往會用到drop_duplicates()進行去重,本文主要介紹了pandas的drop_duplicates無法去重問題解決,具有一定的參考價值,感興趣的可以了解一下

之前沒研究過pandas的去重方法,今天用了一下,發(fā)現這個方法并不是那么好用,我的需求是去除所有列的重復值,并保留第一個重復的值,按我的想法應該是下面這樣寫

import pandas as pd
import numpy as np

df1 = pd.DataFrame({
    'a':[1,1,float('nan'),1,4,5],
    'b':[3,3,4,4,5,6],
    'c':[4,4,5,5,6,7],
})
df1 = df1.drop_duplicates(keep='first')
df1

但是結果卻不盡如人意,

    a    b    c
0    1.0    3    4
2    NaN    4    5
3    1.0    4    5
4    4.0    5    6
5    5.0    6    7

如圖所示,并沒有刪除重復值,所以我只能一個一個列的刪,刪完在重新拼接在一起,

import pandas as pd
import numpy as np

df1 = pd.DataFrame({
    'a':[1,1,float('nan'),1,4,5],
    'b':[3,3,4,4,5,6],
    'c':[4,4,5,5,6,7],
})

cols = df1.columns.to_list()
series_list = []
for col in cols:
    tmp_s = df1[col].drop_duplicates(keep='first')
    tmp_s = tmp_s.dropna()
    tmp_s = tmp_s.reset_index(drop=True)
    print(tmp_s)
    series_list.append(tmp_s)

new_df = pd.concat(series_list,axis=1)
new_df

結果

     a    b    c
0    1.0    3    4
1    4.0    4    5
2    5.0    5    6
3    NaN    6    7

當然這樣數據的索引是無法跟之前的對應起來了,所以我猜pandas是想保留之前的數據的對應關系的,一旦有操作要破壞這種對應,它就不會執(zhí)行

drop_duplicates()官方的函數說明

解釋一下各個參數:

  • subset:表示要去重的列名,默認為 None。

  • keep:有三個可選參數,分別是 first、last、False,默認為 first,表示只保留第一次出現的重復項,刪除其余重復項,last 表示只保留最后一次出現的重復項,False 則表示刪除所有重復項。

  • inplace:布爾值參數,默認為 False 表示刪除重復項后返回一個副本,若為 Ture 則表示直接在原數據上刪除重復項,改變了原來的數據框。

  • ignore_index:布爾值參數,默認為False,表示保留原來的行索引,若為True,則表示重新設置行索引。

到此這篇關于pandas的drop_duplicates無法去重問題解決的文章就介紹到這了,更多相關pandas的drop_duplicates無法去重內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • 使用Python爬取Json數據的示例代碼

    使用Python爬取Json數據的示例代碼

    這篇文章主要介紹了使用Python爬取Json數據的示例代碼,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-12-12
  • python報錯解決之python運行bat文件的各種問題處理

    python報錯解決之python運行bat文件的各種問題處理

    這篇文章主要介紹了python報錯解決之python運行bat文件的各種問題處理,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • Python+KgCaptcha實現驗證碼的開發(fā)詳解

    Python+KgCaptcha實現驗證碼的開發(fā)詳解

    驗證碼通常是為了區(qū)分用戶是人還是計算機,也可以防止解開密碼等惡意行為,而客戶端上多數會用在關鍵操作上?,F在驗證碼的種類樣式也特別多,本文主要介紹了如何用Python和KgCaptcha做出驗證碼功能,需要的可以參考一下
    2023-04-04
  • python requests.post帶head和body的實例

    python requests.post帶head和body的實例

    今天小編就為大家分享一篇python requests.post帶head和body的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • ?分享Python?中的?7?種交叉驗證方法

    ?分享Python?中的?7?種交叉驗證方法

    這篇文章主要給大家分享的是Python?中的?7?種交叉驗證方法,交叉驗證是一種用于估計機器學習模型性能的統(tǒng)計方法,它是一種評估統(tǒng)計分析結果如何推廣到獨立數據集的方法,下文相關介紹,需要的朋友可以參考一下
    2022-03-03
  • 利用Python代碼實現數據可視化的5種方法詳解

    利用Python代碼實現數據可視化的5種方法詳解

    在數據科學中,有多種工具可以進行可視化。下面這篇文章主要給大家介紹了關于利用Python代碼實現數據可視化的5種方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起看看吧。
    2018-03-03
  • 解決Python3 被PHP程序調用執(zhí)行返回亂碼的問題

    解決Python3 被PHP程序調用執(zhí)行返回亂碼的問題

    今天小編就為大家分享一篇解決Python3 被PHP程序調用執(zhí)行返回亂碼的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-02-02
  • python連接池pooledDB源碼閱讀參數的使用

    python連接池pooledDB源碼閱讀參數的使用

    這篇文章主要介紹了python連接池pooledDB源碼閱讀參數的使用,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • Python打開文件,將list、numpy數組內容寫入txt文件中的方法

    Python打開文件,將list、numpy數組內容寫入txt文件中的方法

    今天小編就為大家分享一篇Python打開文件,將list、numpy數組內容寫入txt文件中的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • pytorch中的nn.Unfold()函數和fold()函數解讀

    pytorch中的nn.Unfold()函數和fold()函數解讀

    這篇文章主要介紹了pytorch中的nn.Unfold()函數和fold()函數用法,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08

最新評論