加入多个数据框和重复列

时间:2016-04-27 17:19:53

标签: python pandas

我确定我做错了什么但对我来说并不明显。

我想要加入许多数据帧。我正在使用pd.merge加入左连接,我这样做

Database=pd.merge(df1, df2, left_on='key', Right_on='key',how='left')

Database=pd.merge(df3, df4, left_on='key', Right_on='key',how='left')

重复但总是写回数据库数据帧,一切正常,但最后我有多个重复,即df1_code已经重复为df1_code_x,df1_code_x_x,这使得结果df非常大。我试过了;

Database.T.drop_duplicates().T

但这会导致cms内存错误,如何停止重复列的开头。

1 个答案:

答案 0 :(得分:0)

我认为你不能避免重复,至少不能通过pd.merge使用任何参数。

pd.DataFrame.drop_duplicates()似乎正在删除重复的行。这就解释了为什么要转置和尝试drop_duplicates。可能是在每次合并后使用它而不是在结束时使用它的想法?

另外,根据您的示例调用,您并不需要定义right_onleft_on个参数。两者似乎都是一样的,所以你可以保存自己的输入并将其调到:

Database = df1.merge(df2, how='left', on='key')
Database = df3.merge(df4, how='left', on='key')
...

我希望有帮助