หากต้องการเชื่อมต่อ Pandas DataFrames มากกว่า 2 เฟรม ให้ใช้เมธอด concat() ตั้งค่า แกน พารามิเตอร์เป็น แกน =1 เพื่อต่อกันตามคอลัมน์ ขั้นแรก นำเข้าไลบรารีที่จำเป็น -
import pandas as pd
ให้เราสร้าง 1 st ดาต้าเฟรม -
dataFrame1 = pd.DataFrame( { "Col1": [10, 20, 30],"Col2": [40, 50, 60],"Col3": [70, 80, 90], }, index=[0, 1, 2], )
ให้เราสร้าง 2 nd ดาต้าเฟรม -
dataFrame2 = pd.DataFrame( { "Col1": [100, 110, 120],"Col2": [130, 140, 150],"Col3": [160, 170, 180], }, index=[3, 4, 5], )
ให้เราสร้าง 3 rd ดาต้าเฟรม -
dataFrame3 = pd.DataFrame( { "Col1": [200, 210, 220],"Col2": [230, 240, 250],"Col3": [260, 270, 280], }, index=[6, 7, 8], )
เชื่อม DataFrames ทั้งหมด 3 ตัวเข้าด้วยกันโดยใช้ concat() และตั้งค่า “axis=1” เพื่อต่อตามคอลัมน์ -
res = [dataFrame1, dataFrame2, dataFrame3] pd.concat(res, axis=1))
ตัวอย่าง
ต่อไปนี้เป็นรหัส -
import pandas as pd # Create DataFrame1 dataFrame1 = pd.DataFrame( { "Col1": [10, 20, 30],"Col2": [40, 50, 60],"Col3": [70, 80, 90], }, index=[0, 1, 2], ) # DataFrame1 print"DataFrame1...\n",dataFrame1 # Create DataFrame2 dataFrame2 = pd.DataFrame( { "Col1": [100, 110, 120],"Col2": [130, 140, 150],"Col3": [160, 170, 180], }, index=[3, 4, 5], ) # DataFrame2 print"DataFrame2...\n",dataFrame2 dataFrame3 = pd.DataFrame( { "Col1": [200, 210, 220],"Col2": [230, 240, 250],"Col3": [260, 270, 280], }, index=[6, 7, 8], ) # DataFrame3 print"DataFrame3...\n",dataFrame3 # concatenating more than 3 dataframes # set "axis=1" for concatenation along columns res = [dataFrame1, dataFrame2, dataFrame3] print"\n Concatenating all the 3 DataFrames (along columns)...\n", pd.concat(res, axis=1)
ผลลัพธ์
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้ -
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 (along columns)... Col1 Col2 Col3 Col1 Col2 Col3 Col1 Col2 Col3 0 10.0 40.0 70.0 NaN NaN NaN NaN NaN NaN 1 20.0 50.0 80.0 NaN NaN NaN NaN NaN NaN 2 30.0 60.0 90.0 NaN NaN NaN NaN NaN NaN 3 NaN NaN NaN 100.0 130.0 160.0 NaN NaN NaN 4 NaN NaN NaN 110.0 140.0 170.0 NaN NaN NaN 5 NaN NaN NaN 120.0 150.0 180.0 NaN NaN NaN 6 NaN NaN NaN NaN NaN NaN 200.0 230.0 260.0 7 NaN NaN NaN NaN NaN NaN 210.0 240.0 270.0 8 NaN NaN NaN NaN NaN NaN 220.0 250.0 280.0