merge()链接DataFrame
pandas可以很方便的把多个DataFrame链接到一块儿,就像数据库的sql语句一样,可以根据应用的需要,创建不同的视图,方法的原型为:
pd.merge(
left,
right,
how="inner",
on=None,
left_on=None,
right_on=None,
left_index=False,
right_index=False,
sort=True,
suffixes=("_x", "_y"),
copy=True,
indicator=False,
validate=None,
)
-
left: 待链接的左边 DataFrame 或 Series 对象。 -
right: 待链接的右边 DataFrame 或 Series 对象。 -
how: 指定链接的方式"inner", "outer", "left", "right" 默认为"inner" ,类似于数据库两个表查询的关系
-
on:指定两个对象的链接条件,可以是一个列或者多个列,如果不指定,默认以两个对象中都存在的列名,在on 中指定的列名,必须在两个对象中都存在 -
left_on:当两个对象中可能存在列名不一样时,可以指定要对应的列名,如在left对象中是id,在right对象中是mid -
right_on:当两个对象中可能存在列名不一样时,可以指定要对应的列名,如在left对象中是id,在right对象中是mid 。 -
right_indexleft_index:这两个一般要成对出现,即当left_index为true时,right_index要么也为true,或者right_on指定的有列
以下代码截图来自Jupyter中文集成版(Python整合版)
通过内链接两个dataframe, 两个里面都有'id'

当df1中为id df2中为mid时

当有多个列进行对应时
how='left'

此处用到了fillna()方法 ,当以左表进行链接时,可能有一些列没有值 ,pandas里,默认为以nan呈现,fillna(x)即将nan以x值的方式展现
right 、outer 在此不在一一举例
这篇博客介绍了如何使用Pandas的merge()函数将多个DataFrame合并。通过设置不同参数如'how'(inner, outer, left, right)来实现不同类型的连接。示例中展示了如何处理列名不一致的情况,以及利用fillna()填充缺失值。此外,还提到了Jupyter中文集成版,这是一个简化Jupyter使用的工具,内置了常用库和示例。
6148

被折叠的 条评论
为什么被折叠?



