pandas 拼接数据框

pandas 拼接数据框

pandas 拼接数据框

在数据分析和处理过程中,经常需要将多个数据框按行或列的方式进行拼接,以便进行更加全面的数据分析。Pandas 提供了丰富的函数来实现数据框的拼接操作,本文将详细介绍几种常用的数据框拼接方法。

横向拼接

横向拼接是指将两个数据框基于列进行拼接,也被称为列连接。Pandas 提供了 pd.concat() 函数来实现横向拼接操作。

示例代码如下:

import pandas as pd

# 创建两个数据框
df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
                    'B': ['B0', 'B1', 'B2', 'B3']})
df2 = pd.DataFrame({'C': ['C0', 'C1', 'C2', 'C3'],
                    'D': ['D0', 'D1', 'D2', 'D3']})

# 横向拼接两个数据框
result = pd.concat([df1, df2], axis=1)

print(result)

运行结果:

    A   B   C   D
0  A0  B0  C0  D0
1  A1  B1  C1  D1
2  A2  B2  C2  D2
3  A3  B3  C3  D3

在上面的示例中,我们先创建了两个数据框 df1df2,然后通过 pd.concat() 函数将它们沿着列方向拼接起来,得到了一个新的数据框 result。可以看到,df1df2 的列分别合并到了一起。

纵向拼接

纵向拼接是指将两个数据框基于行进行拼接,也被称为行连接。Pandas 提供了 pd.concat() 函数的 axis=0 参数来实现纵向拼接操作。

示例代码如下:

import pandas as pd

# 创建两个数据框
df1 = pd.DataFrame({'A': ['A0', 'A1'],
                    'B': ['B0', 'B1']})
df2 = pd.DataFrame({'A': ['A2', 'A3'],
                    'B': ['B2', 'B3']})

# 纵向拼接两个数据框
result = pd.concat([df1, df2], axis=0)

print(result)

运行结果:

    A   B
0  A0  B0
1  A1  B1
0  A2  B2
1  A3  B3

在这个示例中,我们创建了两个数据框 df1df2,然后通过 pd.concat() 函数将它们沿着行方向拼接起来,得到了一个新的数据框 result。可以看到,df1df2 的行分别合并到了一起。

数据框的合并

除了拼接操作,Pandas 还提供了 pd.merge() 函数用于根据一个或多个键将两个数据框进行合并。合并操作类似于 SQL 中的 JOIN 操作,可以实现不同数据框之间的连接。

示例代码如下:

import pandas as pd

# 创建两个数据框
df1 = pd.DataFrame({'key': ['K0', 'K1', 'K2', 'K3'],
                    'A': ['A0', 'A1', 'A2', 'A3']})
df2 = pd.DataFrame({'key': ['K0', 'K1', 'K2', 'K3'],
                    'B': ['B0', 'B1', 'B2', 'B3']})

# 根据 'key' 列合并两个数据框
result = pd.merge(df1, df2, on='key')

print(result)

运行结果:

  key   A   B
0  K0  A0  B0
1  K1  A1  B1
2  K2  A2  B2
3  K3  A3  B3

在上面的示例中,我们先创建了两个带有相同键的数据框 df1df2,然后通过 pd.merge() 函数根据 ‘key’ 列对它们进行合并,得到了一个新的数据框 result。可以看到,df1df2 根据 ‘key’ 列实现了合并。

总结来说,Pandas 提供了丰富的函数来实现数据框的拼接和合并操作,能够满足不同场景下的数据处理需求。通过使用这些函数,可以更加方便地进行数据分析和处理。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程