亚洲 国产精品 日韩-亚洲 激情-亚洲 欧美 91-亚洲 欧美 成人日韩-青青青草视频在线观看-青青青草影院

千鋒教育-做有情懷、有良心、有品質的職業教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > Pandas中使用Merge、Join 、Concat合并數據效率對比

Pandas中使用Merge、Join 、Concat合并數據效率對比

來源:千鋒教育
發布人:qyf
時間: 2023-02-22 17:48:00 1677059280

  在 Pandas 中有很多種方法可以進行dataframe(數據框)的合并。

  本文將研究這些不同的方法,以及如何將它們執行速度的對比。

  合并DF

import pandas as pd  
 
# a dictionary to convert to a dataframe
data1 = {'identification': ['a', 'b', 'c', 'd'],
      'Customer_Name':['King', 'West', 'Adams', 'Mercy'],         'Category':['furniture', 'Office Supplies', 'Technology', 'R_materials'],}  
 
# our second dictionary to convert to a dataframe  
data2 = {'identification': ['a', 'b', 'c', 'd'],
      'Class':['First_Class', 'Second_Class', 'Same_day', 'Standard Class'],  
      'Age':[60, 30, 40, 50]}  

# Convert the dictionary into DataFrame  
df1 = pd.DataFrame(data1)
df2 = pd.DataFrame(data2)

  運行我們的代碼后,有兩個 DataFrame,如下所示。

identification Customer_Name         Category
0             a         King       furniture
1             b         West Office Supplies
2             c         Adams       Technology
3             d         Mercy     R_materials  

identification           Class Age
0             a     First_Class   60
1             b   Second_Class   30
2             c       Same_day   40
3             d Standard Class   50

  使用 merge() 函數進一步合并。

圖片 1

# using .merge() function  
new_data = pd.merge(df1, df2, on='identification')

  這產生了下面的新數據;

identification Customer_Name Category     Class           Age
0     a           King         furniture     First_Class     60
1     b           West         Office Supplies Second_Class   30
2     c           Adams         Technology     Same_day     40
3     d           Mercy         R_materials Standard Class   50

  .join() 方法也可以將不同索引的 DataFrame 組合成一個新的 DataFrame。我們可以使用參數‘on’參數指定根據哪列進行合并。

圖片 2

  讓我們看看下面的例子,我們如何將單索引 DataFrame 與多索引 DataFrame 連接起來;

import pandas as pd  

# a dictionary to convert to a dataframe
data1 = {
      'Customer_Name':['King', 'West', 'Adams'],  
    'Category':['furniture', 'Office Supplies', 'Technology'],} 7    
# our second dictionary to convert to a dataframe  
data2 = {
      'Class':['First_Class', 'Second_Class', 'Same_day', 'Standard Class'],  
    'Age':[60, 30, 40, 50]}  

# Convert the dictionary into DataFrame  
Ndata = pd.DataFrame(data1, index=pd.Index(['a', 'b', 'c'], name='identification'))

index = pd.MultiIndex.from_tuples([('a', 'x0'), ('b', 'x1'),
                                ('c', 'x2'), ('c', 'x3')],
                                names=['identification', 'x']) 19  
# Convert the dictionary into DataFrame  
Ndata2 = pd.DataFrame(data2, index= index)

print(Ndata, "\n\n", Ndata2)


# joining singly indexed with
# multi indexed
result = Ndata.join(Ndata2, how='inner')

  我們的結果如下所示;

Customer_Name       Category     Class       Age
identification x                                                     3 a         x0       King       furniture     First_Class     60
b         x1       West     Office Supplies   Second_Class   30
c         x2       Adams       Technology       Same_day     40
        x3       Adams       Technology Standard Class     50

  連接DF

  Pandas 中concat() 方法在可以在垂直方向(axis=0)和水平方向(axis=1)上連接 DataFrame。我們還可以一次連接兩個以上的 DataFrame 或 Series。

  讓我們看一個如何在 Pandas 中執行連接的示例;

import pandas as pd  

# a dictionary to convert to a dataframe
data1 = {'identification': ['a', 'b', 'c', 'd'],
      'Customer_Name':['King', 'West', 'Adams', 'Mercy'],  
      'Category':['furniture', 'Office Supplies', 'Technology', 'R_materials'],}  
 
# our second dictionary to convert to a dataframe  
data2 = {'identification': ['a', 'b', 'c', 'd'],
      'Class':['First_Class', 'Second_Class', 'Same_day', 'Standard Class'],  
      'Age':[60, 30, 40, 50]}  

# Convert the dictionary into DataFrame  
df1 = pd.DataFrame(data1)
df2 = pd.DataFrame(data2)  
#perform concatenation here based on horizontal axis
new_data = pd.concat([df1, df2], axis=1)
print(new_data)

  這樣就獲得了新的 DataFrame :

identification Customer_Name         Category identification \
0             a         King       furniture             a   3 1             b         West Office Supplies             b   4 2             c         Adams       Technology             c   5 3             d         Mercy     R_materials             d    

        Class       Age  
0     First_Class   60  
1   Second_Class   30  
2       Same_day   40  
3 Standard Class   50

  Merge和Join的效率對比

  Pandas 中的Merge Joins操作都可以針對指定的列進行合并操作(SQL中的join)那么他們的執行效率是否相同呢?下面我們來進行一下測。

  兩個 DataFrame 都有相同數量的行和兩列,實驗中考慮了從 100 萬行到 1000 萬行的不同大小的 DataFrame,并在每次實驗中將行數增加了 100 萬。我對固定數量的行重復了十次實驗,以消除任何隨機性。下面是這十次試驗中合并操作的平均運行時間。

圖片 3

  上圖描繪了操作所花費的時間(以毫秒為單位)。

  正如我們從圖中看到的,運行時間存在顯著差異——最多相差 5 倍。隨著 DataFrame 大小的增加,運行時間之間的差異也會增加。兩個 JOIN 操作幾乎都隨著 DataFrame 的大小線性增加。但是,Join的運行時間增加的速度遠低于Merge。

  如果需要處理大量數據,還是請使用join()進行操作。

tags:
聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT
AJ四色鸳鸯真假区别| 重口00Ⅹ变态另类| 18禁黄网站禁片免费观看国产| MM1313亚洲国产精品无码试| 国产成人精品18P| 精品国产一区二区三区吸毒| 美人电影在线观看| 三个男人让我爽了一夜| 亚洲AV无码乱码在线观看裸奔 | 纯肉的日本动漫 在线看| 国产强伦姧在线看无码| 麻豆传播媒体免费版官网| 日本理伦片午夜理伦片| 亚洲AⅤ永久无码精品| 亚洲综合久久精品无码色欲| はるとゆき温泉旅馆攻略| 在线播放免费人成毛片乱码| 敌伦交换第11部分给了| 精品国产福利在线观看| 欧美肉体XXXX极品粗大| 洗澡被公强奷30分钟视频| 中国极品少妇XXXXX1314| 公交车被CAO得合不拢腿视频| 精品粉嫩BBWBBZBBW| 欧美日本操逼视频| 亚洲AV熟妇高潮18P| 99无人区码一码二码三码| 国产精品视频二区不卡| 老熟女@TUBEUMTV| 熟妇人妻中文字幕无码老熟妇| 亚洲欧美日韩一区二区三区在线| 啊~CAO死你个小SAO货视频| 国内揄拍国内精品| 人妻少妇粗大持久满足| 亚洲国产精品无码久久98| Y111111国产精品久久久| 国语自产偷拍精品视频偷| 欧美白人最猛性XXXXX69交| 午夜无码一区二区三区在线| 91人人妻人人澡人人爽超污| 国产热の有码热の无码视频| 欧美黑人性爱视频 | 挺进朋友人妻的身体里| 曰本熟妇色XXXXX曰本妇| 国产精品成人精品久久久| 男男GV白嫩小受GV在线播放| 午夜香吻电视剧免费观看| XXXX娇小10另类| 久久精品国产精品青草| 书房双乳晃动干柴烈火| 做AJ的视频大全电视剧| 果冻传媒影视在线播放| 日本高清乱理伦片中文字幕| 亚洲综合蜜臀AV| 国产精品无码综合区| 欧美性色黄大片WWW喷水| 亚洲老熟女 @ TUBEUM| 公侵犯玩弄熟睡人妻电影| 美女啪啪网站又黄又免费| 亚洲AV无码精品色午夜APP| 暗交小拗女一区二| 看全色黄大色黄女片爽在线看| 无遮挡又色又刺激的视频黄| 把腿张开老子cao烂你n视频| 久久人人爽人人爽人人AV东京热| 无码专区亚洲综合另类| 波多野结衣系列18部无码观看A| 久久人搡人人玩人妻精品首页| 午夜成人亚洲理伦片在线观看| WWW国产亚洲精品久久麻豆| 久久久久精品日韩久久久| 无码专区人妻诱中文字幕| 草莓丝瓜芭乐鸭脖奶茶搭配食物| 久久久久精品国产四虎1| 性欧美丰满熟妇XXXX性| 丰满少妇XXXⅩBBBB视频| 欧美乱妇高清无乱码免费| 亚洲中文无码a∨在线观看| 国产日产欧产精品精品APP| 色哟哟网站在线观看| WWW国产成人免费观看视频| 免费观看交性大片| 亚洲伊人伊成久久人综合网| 国产午夜高清高清在线观看| 熟女高潮喷水一区二区三区| 啊!摁摁~啊!用力~快点视频| 男女啪啪高清无遮挡免费| 一二三四视频社区在线一中文| 激情97综合亚洲色婷婷五| 午夜无码免费福利视频网址| 国产AV一区二区三区最新精品| 日本入室强伦姧在线观看| 18一20岁GAYXXⅩ男| 久久伊人精品一区二区三区 | 精品视频一区二区三区在线观看 | 日韩精品一区二区三区乱码79| ACTION对魔忍| 蜜臀av免费一区二区三区观看| 亚洲女人操BB在线| 国产午夜成人无码免费看不卡| 唐人社视频呦一区二区| 被陌生人在地铁揉到高潮 | 一本一道AⅤ无码中文字幕| 好吊视频一区二区三区| 日韩国产女人久久久| 99热最新成人国产精品| 免费AV片在线观看无需播放器| 亚洲AV色欲色欲WWW| 国产亚洲精品黑人粗大精选| 天堂А√在线中文在线| 成人无码影片精品久久久| 人妻丰满熟妇av无码区乱| AV一区二区三区人妻少妇| 美女夫妻内射潮视频| 一女被两男吃奶玩乳尖| 久久不见久久见免费影院国语| 亚洲高清国产AV拍精品青青草原| 国产日产欧产精品精品AI| 色欲AV无码一区二区人妻| 国产AV无码专区亚汌A√| 色惰日本视频网站WWW| 成人免费无码H黄网站WWW| 日本乱偷人妻中文字幕久久| IPHONE欧美高清18| 欧美丰满美乳XXⅩ高潮www| 2021自拍偷在线精品自拍偷| 麻豆av无码人妻一区二区三区| 一面亲上边一面膜| 美女扒开裤衩让男人桶爽| 亚洲熟妇无码一区二区三区导航| 久久久国产精品消防器材| 亚洲一区在线观看XXX| 久久精品国产精品亚洲| 艳妇臀荡乳欲伦69调教视频| 久久无码人妻一区二区三区午夜| 亚洲熟妇AV日韩熟妇在线| 久久精品中文字幕无码| 一本大道香蕉大L在线吗视频 | 久久青草费线频观看| 中文字幕精品亚洲无线码二区| 免费观看高清日本AⅤ| BT天堂网.WWW在线资源| 人妻丝袜另类欧美偷拍视频| 成人午夜男女爽爽视频| 无码国产精成人午夜视频一区二区| 国产乱码1卡二卡3卡四卡| 亚洲AV无码专区亚洲AV桃花桃| 狠狠躁夜夜躁AV网站色| 亚洲色欲色欲WWW在线观看| 狠狠色合综情丁香五月| 伊人久久大香线蕉AV成人| 妺妺窝人体色www聚色窝仙踪| 在线观看免费A∨网站| 欧美VA亚洲VA日韩VA| 白丝老师用腿夹得我好爽的视频| 日韩欧美视频一区二区| 国产精品久久久久9999| 亚洲情A成黄在线观看动漫尤物| 久久久久亚洲AV片无码V| 中文字幕乱偷无码动漫AV| 欧美成人VA免费看视频| 草莓影视在线观看视频| 为老公升职我主动奉献的句子说说 | 337P日本欧洲亚洲大胆| 日本XXWWWXXXX| 国产精品国产三级国产AV麻豆| 亚洲AV无码AV日韩AV网站不| 久久精品午夜一区二区福利| CHINESE熟妇与小伙子MA| 少妇高潮惨叫久久久久久| 国产无套中出学生姝| 亚洲综合小说区图片区| 欧美激情内射喷水高潮| 国产精品嫩草影院一二三区入口| 亚洲妇熟XXXX妇色黄无码| 美女高潮流白浆娇喘免费网站| 宝宝才两根手指就疼哭了怎么回事| 天天躁日日躁狠狠躁AV| 久久久精品人妻久久影视| CHINESE玩弄老年熟女| 偷窥熟女大屁股对白视频| 精品国产青草久久久久福利| 一本久久知道综合久久| 人妻无码精品久久亚瑟影视| 国产成人综合久久久久久| 亚洲熟妇无码八V在线播放| 人交互MOUSE人害女生迈开腿| 丰满人妻熟妇乱偷人无码出轨| 亚洲男同帅GAY片在线观看| 欧美成人WWW免费全部网站 | 自拍偷自拍亚洲精品播放| 乳欲人妻办公室奶水| 精产国品一二三产品区别视频手机 | 亚洲AⅤ熟女高潮30P| 久久夜色撩人精品国产小说| 成人免费区一区二区三区| 亚洲精品国产自在久久| 日产精品一区二区| 精品人妻无码中字系列| 边做边爱完整版免费视频播放百度 |