📜  垂直连接数据python(1)

📅  最后修改于: 2023-12-03 15:08:07.327000             🧑  作者: Mango

垂直连接数据 Python

垂直连接数据是数据分析和处理中常用的方法之一。它是指将一个或多个数据集按照相同的列进行合并,即将行连接起来。Python提供了多种方式来进行垂直连接数据,这些方式可以满足不同的需求。

Pandas

Pandas是Python中最流行的数据处理库之一。它提供了用于垂直连接数据的concat()函数。

concatenate

使用concatenate函数进行垂直连接数据的示例如下:

import pandas as pd

df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
                    'B': ['B0', 'B1', 'B2', 'B3'],
                    'C': ['C0', 'C1', 'C2', 'C3'],
                    'D': ['D0', 'D1', 'D2', 'D3']})
df2 = pd.DataFrame({'A': ['A4', 'A5', 'A6', 'A7'],
                    'B': ['B4', 'B5', 'B6', 'B7'],
                    'C': ['C4', 'C5', 'C6', 'C7'],
                    'D': ['D4', 'D5', 'D6', 'D7']})
df3 = pd.DataFrame({'A': ['A8', 'A9', 'A10', 'A11'],
                    'B': ['B8', 'B9', 'B10', 'B11'],
                    'C': ['C8', 'C9', 'C10', 'C11'],
                    'D': ['D8', 'D9', 'D10', 'D11']})

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

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
4    A4   B4   C4   D4
5    A5   B5   C5   D5
6    A6   B6   C6   D6
7    A7   B7   C7   D7
8    A8   B8   C8   D8
9    A9   B9   C9   D9
10  A10  B10  C10  D10
11  A11  B11  C11  D11
append

除了concatenate函数外,Pandas还提供了另一种方式来进行垂直连接数据,即使用append()函数。示例如下:

df1 = pd.DataFrame({'A': ['A0', 'A1', 'A2', 'A3'],
                    'B': ['B0', 'B1', 'B2', 'B3'],
                    'C': ['C0', 'C1', 'C2', 'C3'],
                    'D': ['D0', 'D1', 'D2', 'D3']})
df2 = pd.DataFrame({'A': ['A4', 'A5', 'A6', 'A7'],
                    'B': ['B4', 'B5', 'B6', 'B7'],
                    'C': ['C4', 'C5', 'C6', 'C7'],
                    'D': ['D4', 'D5', 'D6', 'D7']})
df3 = pd.DataFrame({'A': ['A8', 'A9', 'A10', 'A11'],
                    'B': ['B8', 'B9', 'B10', 'B11'],
                    'C': ['C8', 'C9', 'C10', 'C11'],
                    'D': ['D8', 'D9', 'D10', 'D11']})

result = df1.append([df2, df3], ignore_index=True)

print(result)

输出结果与上面的concatenate函数使用的结果相同。

NumPy

除了Pandas之外,Python中的另一个重要的数据处理库是NumPy。NumPy提供了vstack()函数来进行垂直连接数据。示例如下:

import numpy as np

arr1 = np.array([[1, 2], [3, 4]])
arr2 = np.array([[5, 6], [7, 8]])
arr3 = np.array([[9, 10], [11, 12]])

result = np.vstack([arr1, arr2, arr3])

print(result)

输出结果如下:

[[ 1  2]
 [ 3  4]
 [ 5  6]
 [ 7  8]
 [ 9 10]
 [11 12]]
总结

Python提供了多种方式来进行垂直连接数据。其中,Pandas是最广泛使用的数据处理库之一,它提供了多个函数来进行垂直连接数据,例如concatenateappend函数。另外,NumPy也提供了一种方式来进行垂直连接数据,即使用vstack()函数。无论使用哪种方式,我们都可以轻松地将一个或多个数据集按照相同的列进行合并。