python进行数据合并concat/merge

目录
  • 1、pd.concat
  • 2、 df.append
  • 3、 pd.merge()
  • 4、 df.join
  • 总结

前言:

两个表中的数据,要根据关键字段,进行合并。
在Excel中可以使用vlookup的方式,在python中可以使用concat或者是merge的方法。

1、pd.concat

pd.concat 函数:

  • 拼接的对象可以是series,还可以是dataframe
  • 拼接对象的个数不受限axis 控制拼接方向(既支持上下拼接,也支持左右拼接)
  • 左右拼接 axis=1,左右拼接的依据是行索引;上下拼接 axis =0 ,拼接依据是列名,默认是上下拼接
  • join 指定拼接方法
    • join=“inner” 内联,表示保留两个表共有的行索引
    • join=“outer” 外联,表示保留两个表所有的行索引,默认外联
#导入需要的包
import pandas as pd
#创建需要的数据集:产品表
dict1={"产品编号":["CP13","CP14","CP15","CP16","CP17"],"产品名称":["产品A003","产品A004","产品A005","产品A006","产品A007"]}
df1 = pd.DataFrame(dict1)
df1

#创建需要的数据集:详情表
dict2={"订单编号":["20220913","20220914","20220915","20220915"],
       "产品编号":["CP13","CP14","CP15","CP16"],
       "产品销量":[13,24,45,32],
       "负责人":["张三","赵六","李八","李八"]}
df2 = pd.DataFrame(dict2)
df2

pd.concat([df1,df2])#默认上下拼接,拼接依据是列名;默认外联,保留两个表都有的索引信息

pd.concat([df1,df2],ignore_index=True)#重置行索引

#左右拼接的依据是行索引  axis默认是0上下拼接,1为左右拼接;默认外联(join = 'outer')
pd.concat([df1,df2],axis=1) 

#join指定了拼接方法,内联,表示保留两个表共有的行索引
pd.concat([df1,df2],axis=1,join="inner") 

2、 df.append

和concat上下拼接的结果类似

df1.append(df2) 

3、 pd.merge()

  • 拼接对象是dataframe或者series,左表必须是datafram
  • 拼接的数量只能是两个
  • 拼接方向只能左右拼
#left_on写左表进行拼接的字段,right_on写右表要进行拼接的字段
pd.merge(df1,df2,left_on="产品编号",right_on="产品编号",how = 'right')
#若两表拼接字段名完全一样,可写一个on
pd.merge(df1,df2,on="产品编号")

4、 df.join

和concat左右拼接的结果类似

df1.join(df2, lsuffix='_b', rsuffix='_a')

总结

到此这篇关于python进行数据合并concat/merge的文章就介绍到这了,更多相关python数据合并内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python数据合并的concat函数与merge函数详解

    目录 一.concat函数 1)横向堆叠与外连接 2) 纵向堆叠与内链接 二.merge()函数 1)根据行索引合并数据 2)合并重叠数据 一.concat函数 1.concat()函数可以沿着一条轴将多个对象进行堆叠,其使用方式类似数据库中的数据表合并pandas.concat(objs, axis=0, join=’outer’, join_axes=None, ignore_index=False, keys=None, levels=None, verify_integrity=Fals

  • python中DataFrame数据合并merge()和concat()方法详解

    目录 merge() 1.常规合并 ①方法1 ②方法2 重要参数 合并方式 left right outer inner 2.多对一合并 3.多对多合并 concat() 1.相同字段的表首位相连 2.横向表合并(行对齐) 3.交叉合并 总结 merge() 1.常规合并 ①方法1 指定一个参照列,以该列为准,合并其他列. import pandas as pd df1 = pd.DataFrame({'id': ['001', '002', '003'], 'num1': [120, 101,

  • python merge、concat合并数据集的实例讲解

    数据规整化:合并.清理.过滤 pandas和python标准库提供了一整套高级.灵活的.高效的核心函数和算法将数据规整化为你想要的形式! 本篇博客主要介绍: 合并数据集:.merge()..concat()等方法,类似于SQL或其他关系型数据库的连接操作. 合并数据集 1) merge 函数参数 参数 说明 left 参与合并的左侧DataFrame right 参与合并的右侧DataFrame how 连接方式:'inner'(默认):还有,'outer'.'left'.'right' on

  • python进行数据合并concat/merge

    目录 1.pd.concat 2. df.append 3. pd.merge() 4. df.join 总结 前言: 两个表中的数据,要根据关键字段,进行合并.在Excel中可以使用vlookup的方式,在python中可以使用concat或者是merge的方法. 1.pd.concat pd.concat 函数: 拼接的对象可以是series,还可以是dataframe 拼接对象的个数不受限axis 控制拼接方向(既支持上下拼接,也支持左右拼接) 左右拼接 axis=1,左右拼接的依据是行索

  • Python Pandas数据合并pd.merge用法详解

    目录 前言 语法 参数 1.连接键 2.索引连接 3.多连接键 4.连接方法 5.连接指示 总结 前言 实现类似SQL的join操作,通过pd.merge()方法可以自由灵活地操作各种逻辑的数据连接.合并等操作 可以将两个DataFrame或Series合并,最终返回一个合并后的DataFrame 语法 pd.merge(left, right, how = 'inner', on = None, left_on = None, right_on = None, left_index = Fal

  • DataFrame 数据合并实现(merge,join,concat)

    merge merge 函数通过一个或多个键将数据集的行连接起来. 场景:针对同一个主键存在的两张包含不同特征的表,通过主键的链接,将两张表进行合并.合并之后,两张表的行数不增加,列数是两张表的列数之和. def merge(left, right, how='inner', on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=False, suffixes=('_x', '_y'), c

  • 一文搞懂Python中Pandas数据合并

    目录 1.concat() 主要参数 示例 2.merge() 参数 示例 3.append() 参数 示例 4.join() 示例 数据合并是数据处理过程中的必经环节,pandas作为数据分析的利器,提供了四种常用的数据合并方式,让我们看看如何使用这些方法吧! 1.concat() concat() 可用于两个及多个 DataFrame 间行/列方向进行内联或外联拼接操作,默认对行(沿 y 轴)取并集. 使用方式 pd.concat( objs: Union[Iterable[~FrameOr

  • Python基础之pandas数据合并

    一.concat concat函数是在pandas底下的方法,可以将数据根据不同的轴作简单的融合 pd.concat(objs, axis=0, join='outer', join_axes=None, ignore_index=False, keys=None, levels=None, names=None, verify_integrity=False) axis: 需要合并链接的轴,0是行,1是列join:连接的方式 inner,或者outer 二.相同字段的表首尾相接 #现将表构成l

  • python的去重以及数据合并的用法说明

    目录 python去重及数据合并 drop_dupicates merge python去重脚本 总结 python去重及数据合并 drop_dupicates 参数含义: subset:即表示要去重指定参考的列 keep : {‘first’, ‘last’, False}, default ‘first’ inplace:boolean, default False, 直接在原来的数据上修改还是保留副本 data = pd.DataFrame({'id':[1,1,2],'value':[1

  • pandas进行数据的交集与并集方式的数据合并方法

    数据合并有多种方式,其中最常见的应该就是交集和并集的求取.之前通过分析总结过pandas数据merge功能默认的行为,其实默认下求取的就是两个数据的"交集". 有如下数据定义: In [26]: df1 Out[26]: data1 key 0 0 b 1 1 b 2 2 a 3 3 c 4 4 a 5 5 a 6 6 b In [27]: df2 Out[27]: data2 key 0 0 a 1 1 b 2 2 d 3 3 b 进行merge的结果: In [28]: pd.me

  • pandas中DataFrame数据合并连接(merge、join、concat)

    pandas作者Wes McKinney 在[PYTHON FOR DATA ANALYSIS]中对pandas的方方面面都有了一个权威简明的入门级的介绍,但在实际使用过程中,我发现书中的内容还只是冰山一角.谈到pandas数据的行更新.表合并等操作,一般用到的方法有concat.join.merge.但这三种方法对于很多新手来说,都不太好分清使用的场合与用途.今天就pandas官网中关于数据合并和重述的章节做个使用方法的总结. 文中代码块主要有pandas官网教程提供. 1 concat co

随机推荐