Pandas 按索引合併數據集的方法

今天小編就爲大家分享一篇Pandas 按索引合併數據集的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

如下所示:

import numpy as np
import pandas as pd
from pandas import Series,DataFrame

一、merge函數

left1 = DataFrame({'水果':['蘋果','梨','草莓'],
     '價格':[3,4,5],
     '數量':[9,8,7]}).set_index('水果')
right1 = DataFrame({'水果':['蘋果','草莓'],
     '產地':['美國','中國']})
print(left1)
print(right1)
 價格 數量
水果  
蘋果 3 9
梨 4 8
草莓 5 7
 產地 水果
0 美國 蘋果
1 中國 草莓
print(pd.merge(left1,right1,right_on='水果',left_index=True,how='outer'))
 價格 數量 產地 水果
0 3 9 美國 蘋果
1 4 8 NaN 梨
1 5 7 中國 草莓

二、DataFrame的join函數

left2 = left1
right2 = right1.set_index('水果')

1.join函數默認將兩個DataFrame的index進行合併

print(left2.join(right2))
 價格 數量 產地
水果    
蘋果 3 9 美國
梨 4 8 NaN
草莓 5 7 中國

2.若其中一個DataFrame合併的鍵不在索引上,可使用on參數

print(right1.join(left1,on='水果',how='outer'))
 產地 水果 價格 數量
0 美國 蘋果 3 9
1 中國 草莓 5 7
1 NaN 梨 4 8

3.多個DataFrame按索引合併

another = DataFrame({'水果':['蘋果','香蕉','梨'],
     '品質':['AA','AAAA','A']}).set_index('水果')
print(left2.join([right2,another],how='outer'))
  價格 數量 產地 品質
梨 4.0 8.0 NaN  A
蘋果 3.0 9.0 美國 AA
草莓 5.0 7.0 中國 NaN
香蕉 NaN NaN NaN AAAA

以上這篇Pandas 按索引合併數據集的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持神馬文庫。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章