Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Python - Cách nối nhiều hơn hai DataFrame Pandas

Để nối nhiều hơn hai DataFrame Pandas, sử dụng phương thức concat(). Trước tiên, nhập thư viện cần thiết:

import pandas as pd

Tạo DataFrame thứ nhất:

dataFrame1 = pd.DataFrame(
    {
        "Col1": [10, 20, 30],
        "Col2": [40, 50, 60],
        "Col3": [70, 80, 90],
    }, index=[0, 1, 2],
)

Tạo DataFrame thứ hai:

dataFrame2 = pd.DataFrame(
    {
        "Col1": [100, 110, 120],
        "Col2": [130, 140, 150],
        "Col3": [160, 170, 180],
    }, index=[3, 4, 5],
)

Tạo DataFrame thứ ba:

dataFrame3 = pd.DataFrame(
    {
        "Col1": [200, 210, 220],
        "Col2": [230, 240, 250],
        "Col3": [260, 270, 280],
    }, index=[6, 7, 8],
)

Nối tất cả 3 DataFrame bằng concat():

res = [dataFrame1, dataFrame2, dataFrame3]
pd.concat(res)

Ví dụ hoàn chỉnh

Mã nguồn đầy đủ:

import pandas as pd
# Tạo DataFrame1
dataFrame1 = pd.DataFrame(
    {
        "Col1": [10, 20, 30],
        "Col2": [40, 50, 60],
        "Col3": [70, 80, 90],
    },
    index=[0, 1, 2],
)
print("DataFrame1...\n", dataFrame1)
# Tạo DataFrame2
dataFrame2 = pd.DataFrame(
    {
        "Col1": [100, 110, 120],
        "Col2": [130, 140, 150],
        "Col3": [160, 170, 180],
    },
    index=[3, 4, 5],
)
print("DataFrame2...\n", dataFrame2)
dataFrame3 = pd.DataFrame(
    {
        "Col1": [200, 210, 220],
        "Col2": [230, 240, 250],
        "Col3": [260, 270, 280],
    },
    index=[6, 7, 8],
)
print("DataFrame3...\n", dataFrame3)
# nối nhiều hơn 3 dataframe
res = [dataFrame1, dataFrame2, dataFrame3]
print("\n Nối tất cả 3 DataFrame...\n", pd.concat(res))

Kết quả

Chương trình sẽ tạo ra kết quả sau:

DataFrame1...
   Col1  Col2  Col3
0    10    40    70
1    20    50    80
2    30    60    90
DataFrame2...
   Col1  Col2  Col3
3   100   130   160
4   110   140   170
5   120   150   180
DataFrame3...
   Col1  Col2  Col3
6   200   230   260
7   210   240   270
8   220   250   280
Concatenating all the 3 DataFrames...
   Col1  Col2  Col3
0    10    40    70
1    20    50    80
2    30    60    90
3   100   130   160
4   110   140   170
5   120   150   180
6   200   230   260
7   210   240   270
8   220   250   280