pandas.merge_ordered¶
-
pandas.
merge_ordered
(left, right, on=None, left_on=None, right_on=None, left_by=None, right_by=None, fill_method=None, suffixes=('_x', '_y'), how='outer')[source]¶ 执行与为时序数据等有序数据设计的可选填充/插值合并。可选择执行分组合并(参见示例)
参数: 左 T0>:DataFrame
右:DataFrame
on:标签或列表
要加入的字段名称。必须在两个DataFrames中都找到。
left_on:标签或列表,或类似数组
要在左侧DataFrame中加入的字段名称。可以是DataFrame长度的向量或向量列表,以使用特定向量作为连接键而不是列
right_on:标签或列表,或类似数组
要在右侧DataFrame或向量/向量列表中每个left_on文档中连接的字段名称
left_by:列名称或列名称列表
组通过组列留下DataFrame,并与右侧DataFrame逐段合并
right_by:列名称或列名称列表
组权限DataFrame按组列,并与左侧DataFrame逐段合并
fill_method:{'ffill',无},默认值无
数据插值方法
后缀:2长度序列(tuple,list,...)
后缀,分别应用于左侧和右侧的重叠列名称
如何:{'left','right','outer','inner'},默认'outer'
- 左:仅使用左框架的键(SQL:左外连接)
- 右:仅使用来自右框架的键(SQL:右外连接)
- outer:使用来自两个框架的键的联合(SQL:full outer join)
- inner:使用两个帧的密钥(SQL:inner join)
版本0.19.0中的新功能。
返回: 合并:DataFrame
如果它是DataFrame的子类,输出类型将与“left”相同。
也可以看看
例子
>>> A >>> B key lvalue group key rvalue 0 a 1 a 0 b 1 1 c 2 a 1 c 2 2 e 3 a 2 d 3 3 a 1 b 4 c 2 b 5 e 3 b
>>> ordered_merge(A, B, fill_method='ffill', left_by='group') key lvalue group rvalue 0 a 1 a NaN 1 b 1 a 1 2 c 2 a 2 3 d 2 a 3 4 e 3 a 3 5 f 3 a 4 6 a 1 b NaN 7 b 1 b 1 8 c 2 b 2 9 d 2 b 3 10 e 3 b 3 11 f 3 b 4