2017-04-18 44 views
1

我有2个Excel表格,我已经加载。我需要将信息从一个添加到另一个。见下面的例子。熊猫Python写入现有文件和匹配列值

table 1: 
cust_id fname lname date_registered 
1   bob  holly 1/1/80 
2   terri jones 2/3/90 

table 2: 
fname lname date_registered cust_id zip 
lawrence fisher 2/3/12   3   12345 

所以我需要从表2与所有其他信息,FNAME,LNAME和date_registered添加CUST_ID 3至表1沿。我不需要所有的列,例如zip。

我在想我可以使用熊猫/合并。但我对这一切都很陌生,不确定这是如何工作的。我需要填充表1中的下一行以及表2中对应的行信息。任何信息都会有帮助。谢谢!

+1

在我看来像你需要concat不合并。您只是将table2中的行添加到表1中? –

回答

0

使用append

appended = table1.append(table2[table1.columns]) 

concat

concated = pd.concat([table1,table2], join='inner') 

两个导致

cust_id fname  lname date_registered 
0 1  bob   holly 1/1/80 
1 2  terri  jones 2/3/90 
0 3  lawrence fisher 2/3/12 
1

随着CONCAT:

In [1]: import pandas as pd 

In [2]: table_1 = pd.DataFrame({'cust_id':[1,2], 'fname':['bob', 'teri'], 'lname':['holly', 'jones'], 'date_registered':['1/1/80', '2/3/90']}) 

In [3]: table_2 = pd.DataFrame({'cust_id':[3], 'fname':['lawrence'], 'lname':['fisher'], 'date_registered':['2/3/12'], 'zip':[12345]}) 

In [4]: final_table = pd.concat([table_1, table_2]) 

In [5]: final_table 
Out[5]: 
    cust_id date_registered  fname lname  zip 
0  1   1/1/80  bob holly  NaN 
1  2   2/3/90  teri jones  NaN 
0  3   2/3/12 lawrence fisher 12345.0