根據行索引合併資料
join方法能通過索引或指定列來連線dataframe,語法格式如下:
join(other,on=none,how=「left」,lsuffix=" 「,rsuffix=」 ",sort=false)
上述方法引數表示的含義如下:
on:用於連線名。 //如果兩個表中行索引和列索引重疊,那麼當使用join()方法進行合併時,使用引數on指定重疊的列名即可
how:可以從 中任選乙個,預設使用left的方式。
lsuffix:接收字串,用於在左側重疊的列名後新增字尾名。
rsuffix:接收字串,用於在右側重疊的列名後新增字尾名。
sort:接收布林值,根據連線鍵對合併的資料進行排序,預設為false。
join()方法預設使用的左連線方式,即以左表為基準,join()方法進行合併後左表的資料會全部展示。
接下來通過**演示:
例子1 join()使用預設連線方法和外連線方法:
left.join(right) #預設為左連線
left.join(right,how='outer')
例子2 行索引和列索引重疊時on的方法:
import pandas as pd #兩個表中的行索引和列索引重疊,使用join方法進行合併,使用引數on指定重疊的列名
left=pd.dataframe(,index=['a','b'])
right=pd.dataframe(,index=['k1','k2'])
left.join(right,on='key',how='left')
例子3 lsuffix引數的用法:
import pandas as pd
jk=pd.dataframe()
jk1=pd.dataframe()
jkjk1
jk.join(jk1,lsuffix='_hkjlj') #lsuffix左側重複的列名新增字尾名,如_kjkj,前面要加 "_"
例子4 rsuffix引數的用法:
jk
jk1jk.join(jk1,rsuffix='_hkjlj') #rsuffix右側重複的列名新增字尾名
pandas 合併操作join函式
dataframe內建的join方法是一種快速合併的方法。它預設以index作為對齊的列。join中的how引數和merge中的how引數一樣,用來指定表合併保留資料的規則。具體可見前面的 how 說明。在實際應用中如果右表的索引值正是左表的某一列的值,這時可以通過將 右表的索引 和 左表的列 對齊...
Pandas 橫向合併DataFrame資料
要保證對應列的資料型別是一致的!不要出現,a的datetime型別是timestemp b的datetime型別是str。否則橫向合併時會出現合併上去的列為nan。需要將兩個dataframe進行橫向拼接 對 a dataframe 拼接一列資料 資料樣例如下 將右側source df中的 fact...
python中pandas的幾種合併
import pandas as pd import numpy as np 1 上下合併 df1 pd.dataframe np.ones 2,4 0,columns a b c d df2 pd.dataframe np.ones 2,4 1,columns a b c d 兩行四列,每一列分別...