Pandas 合并多个Dataframe(merge,concat)的方法

作者:chixujohnny 时间:2021-07-14 07:26:58 

在数据处理的时候,尤其在搞大数据竞赛的时候经常会遇到一个问题就是,多个表单的合并问题,比如一个表单有user_id和age这两个字段,另一个表单有user_id和sex这两个字段,要把这两个表合并成只有user_id、age、sex三个字段的表怎么办的,普通的拼接是做不到的,因为user_id每一行之间不是对应的,像拼积木似的横向拼接肯定是不行的。

pandas中有个merge函数可以做到这个实用的功能,merge这个词会点SQL语言的应该都不陌生。

下面说说merge函数怎么用:


df = pd.merge(df1, df2, how='left', on='user_id')

用法很简单,说一下后两个参数就可以了,how=""参数表示以哪个表的key为准,上面的how="left"表示以表df1为准,而key也就是on=""的参数

how="left"就是说,保留user_id字段的全部信息,不增加也不减少,但是拼接的时候只把df2表中的与df1中user_id字段交集的部分合并上就可以了,如果df2中出现了某个user_id在df1中没有出现,就抛弃掉这个样本不作处理。

如果要进行多key合并:


df = pd.merge(df1, df2, how='left', on=['user_id','sku_id'])

但是如果想仅进行简单的“拼接”而不是合并呢,要使用concat函数:


df = pd.concat( [df_user, dummies_sex, dummies_age, dummies_level], axis=1 )

这样可以保留这些表单的全部信息,参数axis=1表示列拼接,axis=0表示行拼接。

要保证背个表单的行数是相同的,并且每一行对应的key也是相同的,列拼接才变得有意义

来源:https://blog.csdn.net/chixujohnny/article/details/68059992

标签:Pandas,Dataframe,merge,concat
0
投稿

猜你喜欢

  • 理解python中装饰器的作用

    2022-01-29 07:58:01
  • 使用sp_xml_preparedocument处理XML文档的方法

    2011-09-30 11:56:15
  • python利用opencv实现SIFT特征提取与匹配

    2021-07-22 19:08:46
  • 一个用Ajax做的用户名验证程序

    2007-10-21 20:40:00
  • 让大家看看Object标签的强大功能---多用途

    2009-02-21 10:18:00
  • Python实现图形用户界面计算器

    2022-09-02 06:07:22
  • python @property 装饰器使用方法

    2021-04-01 00:38:05
  • 如何将多宿主计算机配置为允许SQL Server访问

    2011-01-04 14:04:00
  • Python 使用双重循环打印图形菱形操作

    2021-07-16 14:13:47
  • python爬虫 批量下载zabbix文档代码实例

    2022-11-07 11:10:29
  • django时区问题的解决

    2022-06-09 10:56:45
  • python实现电子书翻页小程序

    2022-11-16 11:10:29
  • python glom模块的使用简介

    2021-08-21 10:22:02
  • python图像处理基本操作总结(PIL库、Matplotlib及Numpy)

    2022-01-26 00:28:50
  • Python 函数绘图及函数图像微分与积分

    2021-07-13 22:53:14
  • Python Django 母版和继承解析

    2023-02-21 09:44:59
  • Jsp+Servlet实现简单登录注册查询

    2023-07-15 18:08:08
  • 如何使用 SQL Server 数据库查询累计值

    2008-12-03 15:27:00
  • 网页设计进阶之一 (步骤和大局观)

    2008-08-23 10:39:00
  • python日期相关操作实例小结

    2021-07-14 18:39:13
  • asp之家 网络编程 m.aspxhome.com