Pandas 如何跨列合并两个数据表格

Pandas 如何跨列合并两个数据表格

在本文中,我们将介绍如何使用 Pandas 在Python中合并两个数据表格的列。

阅读更多:Pandas 教程

数据问题

我们假设我们有两个数据表格 A 和 B,它们具有相同数量的行和不同的列。 如下所示:

A数据表格:

列1 列2 列3
A1 A2 A3
B1 B2 B3
C1 C2 C3

B数据表格:

列4 列5
D1 D2
E1 E2
F1 F2

现在,我们希望将这两个数据表格沿着列绑定到一个新的数据表格中。

API介绍

在Pandas中,可以使用 merge() 和 join() 合并两个数据表格。但是,在我们的情况下,我们要跨列合并两个数据表格,因此我们需要使用 Pandas 的 concat() 函数。

Pandas 的 concat() 函数用于在一个轴上将 Pandas 数据对象(DataFrame或Series)堆叠在一起。具体来说,如果对象沿着不同轴上的索引相同,则可以简单地连接对象。如果轴上的对象具有不同的索引,则可以指定连接方式。

如果要连接多个 Pandas DataFrame 对象,则必须在concat()函数中以列表形式提供这些对象。下面是concat()的语法:

result = pd.concat([df1, df2, df3])

实现方法

要将列水平合并,请使用 concat() 函数并指定 axis=1 参数。此参数将数据沿着列方向结合。

在下面的代码段中,我们将数据表格 A 和 B 组合在一起,并将结果保存在一个名为result的新数据表格中。

import pandas as pd

# create dataframe A
dataA = {
    '列1': ['A1', 'B1', 'C1'],
    '列2': ['A2', 'B2', 'C2'],
    '列3': ['A3', 'B3', 'C3']
}
dfA = pd.DataFrame(dataA)

# create dataframe B
dataB = {
    '列4': ['D1', 'E1', 'F1'],
    '列5': ['D2', 'E2', 'F2']
}
dfB = pd.DataFrame(dataB)

# combine dfA and dfB horizontally
result = pd.concat([dfA, dfB], axis=1)

print(result)

输出结果是:

  列1 列2 列3 列4 列5
0  A1  A2  A3  D1  D2
1  B1  B2  B3  E1  E2
2  C1  C2  C3  F1  F2

总结

在本文中,我们介绍了如何使用 Pandas 中的 concat() 函数在列方向上合并两个数据表格。记住,使用 concat() 和指定适当的轴方向可以在 Pandas 中方便地组合数据表格。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程