Pandas DataFrame merge() 方法
示例
使用另一个 DataFrame 的内容更新一个 DataFrame 的内容
import pandas as pd
data1 = {
"name": ["Sally", "Mary", "John"],
"age": [50, 40, 30]
}
data2 = {
"name": ["Sally", "Peter", "Micky"],
"age": [77, 44, 22]
}
df1 = pd.DataFrame(data1)
df2 = pd.DataFrame(data2)
newdf = df1.merge(df2, how='right')
自己尝试 »
定义和用法
该 merge()
方法通过将两个 DataFrame 合并在一起(使用指定的方法)来更新它们的内容。
使用参数控制要保留哪些值以及要替换哪些值。
语法
dataframe.merge(right, how, on, left_on, right_on, left_index, right_index, sort, suffixes, copy, indicator, validate)
参数
除了 right
之外的所有参数都是 关键字参数。
参数 | 值 | 描述 |
---|---|---|
right | 必需。要合并的 DataFrame 或 Series | |
how | 'left' |
可选。默认值 'inner'。指定如何合并 |
on | 字符串 列表 |
可选。指定在哪个级别进行合并 |
left_on | 字符串 列表 |
可选。指定在左侧 DataFrame 上进行合并的级别 |
right_on | 字符串 列表 |
可选。指定在右侧 DataFrame 上进行合并的级别 |
left_index | True |
可选。默认值 False。是否使用左侧 DataFrame 的索引作为连接键 |
right_index | True |
可选。默认值 False。是否使用右侧 DataFrame 的索引作为连接键 |
sort | True |
可选。默认值 False。指定是否按连接键对 DataFrame 进行排序 |
suffixes | 列表 | 可选。默认值 '_x','_y'。指定要为重叠列添加的字符串列表 |
copy | True |
可选。默认值 True。指定是否保留副本 |
indicator | True 字符串 |
可选。默认值 False。指定是否在 DataFrame 中添加一列,其中包含有关每一行来源的信息 |
validate | 字符串 | 可选。检查合并是否为指定类型 |
返回值
一个新的 DataFrame,包含合并的结果。
此方法不会更改原始 DataFrame。