pandas的merge方法详解

编程

merge参数

merge(

left,

right,

how="inner",

on=None,

left_on=None,

right_on=None,

left_index=False,

right_index=False,

sort=False,

suffixes=("_x", "_y"),

copy=True,

indicator=False,

validate=None,

)

参数

说明

left

左表

right

右表

how

连接方式,inner、left、right、outer,默认为inner

on

用于连接的列名称

left_on

左表用于连接的列名

right_on

右表用于连接的列名

left_index

是否使用左表的行索引作为连接键,默认False

right_index

是否使用右表的行索引作为连接键,默认False

sort

默认为False,将合并的数据进行排序

copy

默认为True,总是将数据复制到数据结构中,设置为False可以提高性能

suffixes

存在相同列名时在列名后面添加的后缀,默认为("_x", "_y")

indicator

显示合并数据中数据来自哪个表

left_on与right_on主要用于连接的2个表列名不同的时候

DataFrame有一个实例方法join,相当于merge方法的参数left_index=True和right_index=True

inner、left、right、outer

concat

concat可以把多个DataFrame拼接为一个DataFrame

import pandas as pd

import numpy as np

df = pd.DataFrame(np.random.randint(0, 20, (5, 2)), columns=["A", "B"])

print(df)

data = [df[0:2], df[3:]]

print(pd.concat(data))

append

append用于追加行,也concat是pd的静态函数不同,append是DataFrame的方法。

import pandas as pd

import numpy as np

df = pd.DataFrame(np.random.randint(0, 20, (3, 2)), columns=["A", "B"])

print(df)

narry = np.random.randint(0, 20, (2, 2))

data = pd.DataFrame(narry, columns=["A", "B"])

print(df.append(data, ignore_index=True))

以上是 pandas的merge方法详解 的全部内容, 来源链接: utcz.com/z/512251.html

回到顶部