merge() 函数是 pandas 中用于合并两个 dataframe 的函数,类似于 sql 中的 join 操作。它允许你根据指定的列或索引进行连接操作。以下是一些 merge() 函数的用法示例:
merge函数的基本用法
merge()函数的基本用法非常简单,主要包括以下几个参数:
- left:要合并的左侧dataframe;
- right:要合并的右侧dataframe;
- how:指定合并的方式,默认为'inner',可以是'left'、'right'、'outer'等;
- on:指定用于合并的列名,如果不指定,则默认使用两个dataframe中的公共列进行合并。
几个常用的参数
- left_on、right_on:指定左侧dataframe和右侧dataframe用于合并的列名,可用于处理两个dataframe中列名不同的情况;
- suffixes:指定在列名冲突时用于区分的后缀,默认为('_x', '_y');
- indicator:在结果dataframe中增加一个特殊的列,指示每行的合并方式,默认为false;
- validate:检查合并操作的类型是否有效,默认为none。
假设我们有两个 dataframe,分别是 df1 和 df2:
import pandas as pd
# 创建 dataframe df1
data1 = {'id': [1, 2, 3, 4],
'name': ['alice', 'bob', 'charlie', 'david']}
df1 = pd.dataframe(data1)
# 创建 dataframe df2
data2 = {'id': [2, 3, 4, 5],
'age': [25, 30, 35, 40]}
df2 = pd.dataframe(data2)
1.内连接(inner join):
merged_outer = pd.merge(df1, df2, on='id', how='outer') print(merged_outer)
这会将两个 dataframe 按照共同的 id 列进行内连接。结果将只包含两个 dataframe 中都有的 id。
2.左连接(left join):
merged_outer = pd.merge(df1, df2, on='id', how='outer') print(merged_outer)
这会将 df1 按照 id 列进行左连接,即将 df1 的所有行保留,并且将 df2 中匹配的行合并。
3.右连接(right join):
merged_outer = pd.merge(df1, df2, on='id', how='outer') print(merged_outer)
这会将 df2 按照 id 列进行右连接,即将 df2 的所有行保留,并且将 df1 中匹配的行合并。
4.外连接(outer join):
merged_outer = pd.merge(df1, df2, on='id', how='outer') print(merged_outer)
这会将两个 dataframe 按照共同的 id 列进行外连接,即保留两个 dataframe 中的所有行,并且将匹配的行合并。
到此这篇关于pandas中merge函数的用法的文章就介绍到这了,更多相关pandas merge函数内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论