无名阁,只为技术而生。流水不争先,争的是滔滔不绝。

详解Pandas concat连接操作的5种使用方法 Pandas.concat函数常用方式 全网首发(图文详解1)

前沿技术 Micheal 5个月前 (05-19) 124次浏览 已收录 扫描二维码

详解Pandas concat连接操作的5种使用方法

Pandas的concat函数主要用于数据的联接合并,它可以按照某个轴进行合并,可以选择联接的方式(外联接/内联接),可以重设索引等等。下面是pandas的concat函数的五种常用的使用方式:

1.简单纵向合并

传入参数是一个DataFrame列表,返回的是一个新的DataFrame,合并在一起。

import pandas as pd

# 创建两个dataframe
df1 = pd.DataFrame([['a', 1], ['b', 2]], columns=['letter', 'number'])
df2 = pd.DataFrame([['c', 3], ['d', 4]], columns=['letter', 'number'])

# 合并两个dataframe
df = pd.concat([df1, df2])

print(df)

2.横向合并

如果你想要横向合并,只需要将参数axis设置为1即可:

import pandas as pd

# 创建两个dataframe
df1 = pd.DataFrame([['a', 1], ['b', 2]], columns=['letter', 'number'])
df2 = pd.DataFrame([['bird', 'polly'], ['monkey', 'george']], columns=['animal', 'name'])

# 合并两个dataframe
df = pd.concat([df1, df2], axis=1)

print(df)

3.通过keys参数创建多级索引

你可以在合并时通过keys参数来创建多级索引:

import pandas as pd

df1 = pd.DataFrame([['a', 1], ['b', 2]], columns=['letter', 'number'])
df2 = pd.DataFrame([['c', 3], ['d', 4]], columns=['letter', 'number'])

df = pd.concat([df1, df2], keys=['df1', 'df2'])

print(df)

4.使用内联接和外联接

Pandas concat函数支持SQL类似的内联接和外联接.Merge函数和Join函数也可实现类似功能.

import pandas as pd

df1 = pd.DataFrame([['a', 1], ['b', 2]], columns=['letter', 'number'])
df2 = pd.DataFrame([['b', 3], ['c', 4], ['d', 5]], columns=['letter', 'number'])

df_outer = pd.concat([df1, df2], join='outer')
print("outer:\n", df_outer)

df_inner = pd.concat([df1, df2], join='inner')
print("inner:\n", df_inner)

5.忽略索引

如果不想保留原来的索引,可以通过参数ignore_index设置为True:

import pandas as pd

df1 = pd.DataFrame([['a', 1], ['b', 2]], columns=['letter', 'number'])
df2 = pd.DataFrame([['c', 3], ['d', 4]], columns=['letter', 'number'])

df = pd.concat([df1, df2], ignore_index=True)

print(df)

这些就是Pandas concat连接操作的五种使用方法。希望对你有帮助。
(安装过程) 如何在新电脑上安装Ghost Win10操作系统 Windows 10 Ghost 安装指南(准备安装完成) 全网首发(图文详解1)
(准确性和优化) 联通的dns地址是多少 联通 DNS 设置 全网首发(图文详解1)

喜欢 (0)
[]
分享 (0)
关于作者:
流水不争先,争的是滔滔不绝