pandas中merge函數(shù)的用法
merge() 函數(shù)是 Pandas 中用于合并兩個(gè) DataFrame 的函數(shù),類似于 SQL 中的 JOIN 操作。它允許你根據(jù)指定的列或索引進(jìn)行連接操作。以下是一些 merge() 函數(shù)的用法示例:
merge函數(shù)的基本用法
merge()函數(shù)的基本用法非常簡(jiǎn)單,主要包括以下幾個(gè)參數(shù):
- left:要合并的左側(cè)DataFrame;
- right:要合并的右側(cè)DataFrame;
- how:指定合并的方式,默認(rèn)為'inner',可以是'left'、'right'、'outer'等;
- on:指定用于合并的列名,如果不指定,則默認(rèn)使用兩個(gè)DataFrame中的公共列進(jìn)行合并。
幾個(gè)常用的參數(shù)
- left_on、right_on:指定左側(cè)DataFrame和右側(cè)DataFrame用于合并的列名,可用于處理兩個(gè)DataFrame中列名不同的情況;
- suffixes:指定在列名沖突時(shí)用于區(qū)分的后綴,默認(rèn)為('_x', '_y');
- indicator:在結(jié)果DataFrame中增加一個(gè)特殊的列,指示每行的合并方式,默認(rèn)為False;
- validate:檢查合并操作的類型是否有效,默認(rèn)為None。
假設(shè)我們有兩個(gè) DataFrame,分別是 df1 和 df2:
import pandas as pd
# 創(chuàng)建 DataFrame df1
data1 = {'ID': [1, 2, 3, 4],
'Name': ['Alice', 'Bob', 'Charlie', 'David']}
df1 = pd.DataFrame(data1)
# 創(chuàng)建 DataFrame df2
data2 = {'ID': [2, 3, 4, 5],
'Age': [25, 30, 35, 40]}
df2 = pd.DataFrame(data2)
1.內(nèi)連接(Inner Join):
merged_outer = pd.merge(df1, df2, on='ID', how='outer') print(merged_outer)
這會(huì)將兩個(gè) DataFrame 按照共同的 ID 列進(jìn)行內(nèi)連接。結(jié)果將只包含兩個(gè) DataFrame 中都有的 ID。
2.左連接(Left Join):
merged_outer = pd.merge(df1, df2, on='ID', how='outer') print(merged_outer)
這會(huì)將 df1 按照 ID 列進(jìn)行左連接,即將 df1 的所有行保留,并且將 df2 中匹配的行合并。
3.右連接(Right Join):
merged_outer = pd.merge(df1, df2, on='ID', how='outer') print(merged_outer)
這會(huì)將 df2 按照 ID 列進(jìn)行右連接,即將 df2 的所有行保留,并且將 df1 中匹配的行合并。
4.外連接(Outer Join):
merged_outer = pd.merge(df1, df2, on='ID', how='outer') print(merged_outer)
這會(huì)將兩個(gè) DataFrame 按照共同的 ID 列進(jìn)行外連接,即保留兩個(gè) DataFrame 中的所有行,并且將匹配的行合并。
到此這篇關(guān)于pandas中merge函數(shù)的用法的文章就介紹到這了,更多相關(guān)pandas merge函數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- pandas數(shù)據(jù)合并與重塑之merge詳解
- Pandas數(shù)據(jù)集的合并與連接merge()方法
- Python?pandas數(shù)據(jù)合并merge函數(shù)用法詳解
- pandas中merge()函數(shù)的用法解讀
- Python?Pandas數(shù)據(jù)合并pd.merge用法詳解
- pandas中DataFrame數(shù)據(jù)合并連接(merge、join、concat)
- Pandas 連接合并函數(shù)merge()詳解
- pandas merge報(bào)錯(cuò)的解決方案
- 詳解Python3 pandas.merge用法
- pandas dataframe的合并實(shí)現(xiàn)(append, merge, concat)
- 在Pandas中DataFrame數(shù)據(jù)合并,連接(concat,merge,join)的實(shí)例
相關(guān)文章
python實(shí)現(xiàn)將文件名批量命名為四位數(shù)or五位數(shù)
這篇文章主要介紹了python實(shí)現(xiàn)將文件名批量命名為四位數(shù)or五位數(shù)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08
余弦相似性計(jì)算及python代碼實(shí)現(xiàn)過(guò)程解析
這篇文章主要介紹了余弦相似性計(jì)算及python代碼實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-09-09
pip install過(guò)程中出現(xiàn)error: subprocess-exited-with-erro
在Python環(huán)境配置過(guò)程中,經(jīng)常會(huì)遇到各種安裝錯(cuò)誤,其中一個(gè)常見(jiàn)的錯(cuò)誤是 pip install 過(guò)程中出現(xiàn)的 error: subprocess-exited-with-error,在本文中,我將詳細(xì)解析這個(gè)錯(cuò)誤的原因,并提供具體的解決方案和步驟,確保大家能夠順利完成安裝,避免類似問(wèn)題的再次發(fā)生2024-07-07
Python?matplotlib?seaborn繪圖教程詳解
Seaborn是在matplotlib的基礎(chǔ)上進(jìn)行了更高級(jí)的API封裝,從而使得作圖更加容易,在大多數(shù)情況下使用seaborn就能做出很具有吸引力的圖。本文將詳細(xì)講解如何利用Seaborn繪制圖表,需要的可以參考一下2022-03-03
簡(jiǎn)單談?wù)凱ython中函數(shù)的可變參數(shù)
和C語(yǔ)言一樣,Python中也有可變參數(shù)函數(shù),即一個(gè)函數(shù)可以接收多個(gè)參數(shù),而這些參數(shù)的個(gè)數(shù)在函數(shù)調(diào)用之前事先是不知道的。下面這篇文章我們來(lái)介紹下python中的可變參數(shù)2016-09-09
python使用PyFetion來(lái)發(fā)送短信的例子
這篇文章主要介紹了python使用PyFetion來(lái)發(fā)送短信的例子,需要的朋友可以參考下2014-04-04
解決Django響應(yīng)JsonResponse返回json格式數(shù)據(jù)報(bào)錯(cuò)問(wèn)題
這篇文章主要介紹了解決Django響應(yīng)JsonResponse返回json格式數(shù)據(jù)報(bào)錯(cuò)問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-08-08
Python?CNN卷積神經(jīng)網(wǎng)絡(luò)實(shí)戰(zhàn)教程深入講解
CNN,即卷積神經(jīng)網(wǎng)絡(luò),主要用于圖像識(shí)別,分類。由輸入層,卷積層,池化層,全連接層(Affline層),Softmax層疊加而成。卷積神經(jīng)網(wǎng)絡(luò)中還有一個(gè)非常重要的結(jié)構(gòu):過(guò)濾器,它作用于層與層之間(卷積層與池化層),決定了怎樣對(duì)數(shù)據(jù)進(jìn)行卷積和池化2022-12-12

