dataframe_合并
(1)merge
df1.merge(df2,on="intopiece",how="outer") == pd.merge(df1,df2,on="intopiece",how="outer")
--只能合并两个dataframe
--两个dataframe至少有一列相同
df1 = pd.DataFrame({'key1':['a','b','c','d'],'key3':['i','j','k','l']},index=['k','l','m','n',])
df2 = pd.DataFrame({'key1':['a','B','c','d'],'key2':['e','f','g','H']},index = ['k','q','u','v'])
print(df1)
print(df2)
print(pd.merge(df1,df2,how="outer"))
print(df1.merge(df2,how="outer"))
  key1 key3
k    a    i
l    b    j
m    c    k
n    d    l
  key1 key2
k    a    e
q    B    f
u    c    g
v    d    H
  key1 key3 key2
0    a    i    e
1    b    j  NaN
2    c    k    g
3    d    l    H
4    B  NaN    f
  key1 key3 key2
0    a    i    e
1    b    j  NaN
2    c    k    g
3    d    l    H
4    B  NaN    f
(2)join
df1.join(df2,how="left")
--只能合并两个dataframe
--两个dataframe索引相同
df1 = pd.DataFrame({'key1':['a','b','c','d'],'key3':['i','j','k','l']},index=['k','l','m','n',])
df2 = pd.DataFrame({'key4':['a','B','c','d'],'key2':['e','f','g','H']},index = ['k','q','u','v'])
print(df1)
print(df2)
print(df1.join(df2,how="left"))
  key1 key3
k    a    i
l    b    j
m    c    k
n    d    l
  key2 key4
k    e    a
q    f    B
u    g    c
v    H    d
  key1 key3 key2 key4
k    a    i    e    a
l    b    j  NaN  NaN
m    c    k  NaN  NaN
n    d    l  NaN  NaN
(1)concat
pd.concat([df1,df2],join="outer",axis=1)
--可以合并多个个dataframe
--合并得dataframe索引相同
df1 = pd.DataFrame({'key1':['a','b','c','d'],'key3':['i','j','k','l']},index=['k','l','m','n',])
df2 = pd.DataFrame({'key4':['a','B','c','d'],'key2':['e','f','g','H']},index = ['k','q','u','v'])
print(df1)
print(df2)
print(pd.concat([df1,df2],join="outer",axis=1))
  key1 key3
k    a    i
l    b    j
m    c    k
n    d    l
  key2 key4
k    e    a
q    f    B
u    g    c
v    H    d
  key1 key3 key2 key4
k    a    i    e    a
l    b    j  NaN  NaN
m    c    k  NaN  NaN
n    d    l  NaN  NaN
q  NaN  NaN    f    B
u  NaN  NaN    g    c
v  NaN  NaN    H    d
posted on 2020-05-08 14:00 happygril3 阅读(290) 评论(0) 收藏 举报
 
                    
                     
                    
                 
                    
                 
                
            
         
 
         浙公网安备 33010602011771号
浙公网安备 33010602011771号