首页  >  文章  >  后端开发  >  如何将两个具有重叠列的 Pandas DataFrame 组合在一起?

如何将两个具有重叠列的 Pandas DataFrame 组合在一起?

Mary-Kate Olsen
Mary-Kate Olsen原创
2024-10-24 19:07:29895浏览

How Can You Combine Two Pandas DataFrames with Overlapping Columns?

组合 Pandas 数据框:在公共列上连接

Joinder 是基于公共属性合并数据框的基本操作。本问题研究组合两个 pandas 数据框的问题:restaurant_ids_dataframe 和restaurant_review_frame。

用户尝试利用 DataFrame.join() 方法使用business_id 列执行左连接。但是,由于列(business_id、stars 和 type)重叠,会出现错误。为了解决这个问题,我们可以使用 merge 函数:

<code class="python">import pandas as pd

pd.merge(restaurant_ids_dataframe, restaurant_review_frame, on='business_id', how='outer')</code>

on 参数指定用于连接的字段名称,而 how 参数定义连接类型(outer、inner、left 或 right) )。在这种情况下,选择外部作为两个数据帧中键的并集。

请注意,两个数据帧都包含名为 star 的列。默认情况下,合并操作会将后缀附加到列名称(star_x 和 star_y)。要自定义这些后缀,我们可以使用 suffixes 关键字参数:

<code class="python">pd.merge(restaurant_ids_dataframe, restaurant_review_frame, on='business_id', how='outer', suffixes=('_restaurant_id', '_restaurant_review'))</code>

通过此修改,星列将被重命名为 star_restaurant_id 和 star_restaurant_review。通过利用合并功能并适当配置联接类型和列后缀,我们可以根据共享的business_id列成功组合两个数据框。

以上是如何将两个具有重叠列的 Pandas DataFrame 组合在一起?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn