91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python數據分析之Pandas?Dataframe怎么合并和去重

發布時間:2022-05-23 09:23:52 來源:億速云 閱讀:956 作者:iii 欄目:開發技術

這篇文章主要介紹“Python數據分析之Pandas Dataframe怎么合并和去重”的相關知識,小編通過實際案例向大家展示操作過程,操作方法簡單快捷,實用性強,希望這篇“Python數據分析之Pandas Dataframe怎么合并和去重”文章能幫助大家解決問題。

一、之 Pandas Dataframe合并

Pandas 提供了merge()方法來進行合并操作,使用語法如下:

pd.merge(left, right, how="inner", on=None, left_on=None, right_on=None,
left_index=False, right_index=False, sort=False)

常用的參數說明:

  • left、right:指定左右兩個要進行合并的 DataFrame 對象

  • how:指定合并類型,可以選擇left、right、outer、inner,此參數可以確定以哪邊(左邊、右邊或者左右共有)的鍵為基準,如果出現匹配失敗的用NaN填充,默認為inner,具體如下:

    • left:代表左連接,以左DataFrame為基準,右側匹配失敗的用NaN填充

    • right:代表右連接,以右DataFrame為基準,左側匹配失敗的用NaN填充

    • inner:代表內連接,取交集

    • outer:代表外連接,取并集,匹配失敗的用NaN填充

  • on:指定用于連接的鍵,也就是列名,傳遞改參數的話,必須保證傳遞的“鍵”在左右兩邊的DataFrame中都存在

  • left_on:指定左側DataFrame中用于連接的鍵

  • right_on:指定右側DataFrame中用于連接的鍵

  • left_index & right_index:表示以行索引作為合并基準,默認為False

  • sort:指定是否按照字典順序通過連接鍵對結果DataFrame進行排序,默認為False

例如,對下面兩個 DataFrame 對象執行合并操作:

import pandas as pd
data = {"name": ["Alice", "Bob", "Cindy", "David"], "age": [25, 23, 28, 24], "gender": ["woman", "man", "woman", "man"]}
df1 = pd.DataFrame(data)
df1

Python數據分析之Pandas?Dataframe怎么合并和去重

data = {"name": ["Alice", "Bob", "Cindy", "Emilie"], "city": ["beijing", "beijing", "jinan", "shanghai"]}
df2 = pd.DataFrame(data)
df2

Python數據分析之Pandas?Dataframe怎么合并和去重

使用name作為連接鍵:

merge_pd = pd.merge(df1, df2, on="name")
merge_pd

結果輸出如下:

Python數據分析之Pandas?Dataframe怎么合并和去重

設置為左連接:

merge_pd = pd.merge(df1, df2, on="name", how="left")
merge_pd

結果輸出如下:

Python數據分析之Pandas?Dataframe怎么合并和去重

在進行數據分析時,數據的質量可能并不理想,有可能包含一些重復數據,那我們就要進行數據的“去重”操作,刪除重復的數據,保留唯一的數據項,從而提高數據集整體的精確度,同時也可以節省空間、提升讀寫性能等,接下來就來介紹一下 Pandas Dataframe 的去重操作。

二、去重操作

Pandas 提供了drop_duplicates()方法進行數據的去重操作,具體使用格式如下:

df.drop_duplicates(subset=None, keep="first", inplace=False, ignore_index=False)

參數說明如下:

  • subset:指定要進行去重的列名,默認為None,可以使用列表指定一個或多個列名

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

  • inplace:是否在原Dataframe對象上進行操作

  • ignore_index:默認為False,設置為True可以重新生成行索引。

例如,對下面 DataFrame 對象進行去重操作:

Python數據分析之Pandas?Dataframe怎么合并和去重

可以看到該DataFrame 對象中索引為1、3的行是重復的,下面進行去除:

保留第一次出現的重復項

df.drop_duplicates(inplace=True)
df

結果輸出如下:

Python數據分析之Pandas?Dataframe怎么合并和去重

刪除所有重復項

df.drop_duplicates(keep=False, inplace=True)
df

結果輸出如下:

Python數據分析之Pandas?Dataframe怎么合并和去重

ignore_index參數使用

df.drop_duplicates(inplace=True, ignore_index=True)
df

Python數據分析之Pandas?Dataframe怎么合并和去重

ignore_index設置為True后,通過結果可以看到,行索引進行了重排。

當然drop_duplicates()方法也可以根據指定列名去重,給subset傳遞參數即可,例如根據name列進行去重:

df.drop_duplicates(subset=["name"], inplace=True)

關于“Python數據分析之Pandas Dataframe怎么合并和去重”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識,可以關注億速云行業資訊頻道,小編每天都會為大家更新不同的知識點。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

栾川县| 大邑县| 通海县| 阜平县| 邢台市| 龙井市| 宣汉县| 冕宁县| 马山县| 黄冈市| 庆元县| 马公市| 赤峰市| 芒康县| 昌宁县| 邹平县| 新邵县| 静海县| 襄汾县| 淄博市| 乐至县| 河西区| 沂水县| 汉川市| 长治县| 阿拉尔市| 青州市| 大新县| 绵阳市| 沙河市| 谢通门县| 凤凰县| 靖安县| 山东| 莫力| 东宁县| 合水县| 界首市| 敦煌市| 洞头县| 浠水县|