欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python 利用dataframe实现连接

程序员文章站 2022-03-09 16:15:25
...

merge列连接

result_dataframe = pd.merge(left_dataframe, right_dataframe, how='outer', on=['key1', 'key2'])

join列连接


result_dataframe = left_dataframe.join(right_dataframe, on=['key1', 'key2'], how='inner')

append行连接

result_df= df1.append(df4)
result_df = df1.append([df2, df3])

concat行连接

frames = [df1, df2, df3]
result = pd.concat(frames)

*备注:
DataFrame.merge(left,right, how=‘inner’, on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=False, suffixes=(’_x’, 'y’), copy=True, indicator=False, validate=None)

参数含义:
1:left、right DataFrame或命名为Series
需要合并的DataFrame
2:how {‘left’,‘right’,‘outer’,‘inner’},默认’inner’
left:仅使用左DataFrame中的键,类似于SQL左外连接; 保留关键顺序。
right:仅使用右DataFrame中的键,类似于SQL右外连接; 保留关键顺序。
outer:使用来自两个DataFrame的键的并集,类似于SQL全外连接; 按字典顺序排序键。
inner:使用两个DataFrame的键交集,类似于SQL内连接; 保留左键的顺序。
3:on 标签或列表
以一列的字段作为合并基准唯一值
4:left_on、right_on 标签或列表,或类似数组
在左侧/右侧连接的列或者索引
5:left_index、right_index 标签或列表,或类似数组
以左侧或者右侧索引作为连接
6:sort bool,默认为False
在结果DataFrame中按字典顺序对连接键进行排序。如果为False,则连接键的顺序取决于连接类型(关键字 如何)
7:suffixes (str,str)的元组,默认(‘x’,’ y’)
合并后的DataFrame重复列名会加上_x’,’ y’后缀

d.concat(objs, axis=0, join=‘outer’, join_axes=None, ignore_index=False,
keys=None, levels=None, names=None, verify_integrity=False,
copy=True)
objs︰ 一个序列或系列、 综合或面板对象的映射。如果字典中传递,将作为键参数,使用排序的键,除非它传递,在这种情况下的值将会选择 (见下文)。任何没有任何反对将默默地被丢弃,除非他们都没有在这种情况下将引发 ValueError。

axis: {0,1,…},默认值为 0。要连接沿轴。

join: {‘内部’、 ‘外’},默认 ‘外’。如何处理其他 axis(es) 上的索引。联盟内、 外的交叉口。

ignore_index︰ 布尔值、 默认 False。如果为 True,则不要串联轴上使用的索引值。由此产生的轴将标记 0,…,n-1。这是有用的如果你串联串联轴没有有意义的索引信息的对象。请注意在联接中仍然受到尊重的其他轴上的索引值。

join_axes︰ 索引对象的列表。具体的指标,用于其他 n-1 轴而不是执行内部/外部设置逻辑。

keys︰ 序列,默认为无。构建分层索引使用通过的键作为最外面的级别。如果多个级别获得通过,应包含元组。

levels︰ 列表的序列,默认为无。具体水平 (唯一值) 用于构建多重。否则,他们将推断钥匙。

names︰ 列表中,默认为无。由此产生的分层索引中的级的名称。

verify_integrity︰ 布尔值、 默认 False。检查是否新的串联的轴包含重复项。这可以是相对于实际数据串联非常昂贵。

副本︰ 布尔值、 默认 True。如果为 False,请不要,不必要地复制数据。

参考:
https://blog.csdn.net/qq_42707449/article/details/81116656
https://blog.csdn.net/sdwww3238/article/details/86702971