Để hợp nhất hai Pandas DataFrame với cột chung, hãy sử dụng merge () chức năng và đặt BẬT tham số như tên cột. Để đặt NaN cho các giá trị chưa được so khớp, hãy sử dụng “ cách ”Và đặt nó ở bên trái hoặc đúng . Điều đó có nghĩa là hợp nhất trái hoặc phải.
Đầu tiên, hãy nhập thư viện gấu trúc với bí danh -
import pandas as pd
Hãy để chúng tôi tạo DataFrame1 -
dataFrame1 = pd.DataFrame( { "Car": ['BMW', 'Lexus', 'Audi', 'Mustang', 'Bentley', 'Jaguar'], "Units": [100, 150, 110, 80, 110, 90] } )
Hãy để chúng tôi tạo DataFrame2 -
dataFrame2 = pd.DataFrame( { "Car": ['BMW', 'Lexus', 'Tesla', 'Mustang', 'Mercedes', 'Jaguar'], "Reg_Price": [7000, 1500, 5000, 8000, 9000, 6000] } )
Bây giờ, hợp nhất DataFrames với cột chung Xe. Bên trái "“ hiển thị tất cả các giá trị của DataFrame bên trái và đặt NaN cho các giá trị chưa khớp từ DataFrame thứ hai -
mergedRes = pd.merge(dataFrame1, dataFrame2, on ='Car', how ="left")
Ví dụ
Sau đây là mã -
import pandas as pd # Create DataFrame1 dataFrame1 = pd.DataFrame( { "Car": ['BMW', 'Lexus', 'Audi', 'Mustang', 'Bentley', 'Jaguar'], "Units": [100, 150, 110, 80, 110, 90] } ) print"DataFrame1 ...\n",dataFrame1 # Create DataFrame2 dataFrame2 = pd.DataFrame( { "Car": ['BMW', 'Lexus', 'Tesla', 'Mustang', 'Mercedes', 'Jaguar'], "Reg_Price": [7000, 1500, 5000, 8000, 9000, 6000] } ) print"\nDataFrame2 ...\n",dataFrame2 # merge DataFrames with common column Car and "left" sets NaN for unmatched values from second DataFrame mergedRes = pd.merge(dataFrame1, dataFrame2, on ='Car', how ="left") print"\nMerged data frame with common column...\n", mergedRes
Đầu ra
Sau đây là mã -
DataFrame1 ... Car Units 0 BMW 100 1 Lexus 150 2 Audi 110 3 Mustang 80 4 Bentley 110 5 Jaguar 90 DataFrame2 ... Car Reg_Price 0 BMW 7000 1 Lexus 1500 2 Tesla 5000 3 Mustang 8000 4 Mercedes 9000 5 Jaguar 6000 Merged data frame with common column... Car Units Reg_Price 0 BMW 100 7000.0 1 Lexus 150 1500.0 2 Audi 110 NaN 3 Mustang 80 8000.0 4 Bentley 110 NaN 5 Jaguar 90 6000.0