Python - 合并不同长度的数据帧
要合并不同长度的数据帧,我们需要使用该merge()方法。假设以下是我们第一个长度为4的DataFrame-
dataFrame1 = pd.DataFrame( { "Car": ['BMW', 'Lexus', 'Audi', 'Jaguar'] } ) print("DataFrame1 ...\n",dataFrame1) print("DataFrame1 length = ", len(dataFrame1))
以下是我们的第二个数据帧,长度为6-
dataFrame2 = pd.DataFrame( { "Car": ['BMW', 'Lexus', 'Audi', 'Mercedes', 'Jaguar', 'Bentley'] } ) print("\nDataFrame2 ...\n",dataFrame2) print("DataFrame2 length = ", len(dataFrame2))
现在,使用以下命令合并数据帧merge()-
mergedRes = dataFrame2.merge(dataFrame1, how='left')
示例
以下是代码-
import pandas as pd #CreateDataFrame1 dataFrame1 = pd.DataFrame( { "Car": ['BMW', 'Lexus', 'Audi', 'Jaguar'] } ) print"DataFrame1 ...\n",dataFrame1 #FindlengthofDataFrame1 print"DataFrame1 length = ", len(dataFrame1) #CreateDataFrame2 dataFrame2 = pd.DataFrame( { "Car": ['BMW', 'Lexus', 'Audi', 'Mercedes', 'Jaguar', 'Bentley'] } ) print"\nDataFrame2 ...\n",dataFrame2 #FindlengthofDataFrame2 print"DataFrame2 length = ", len(dataFrame2) #mergeDataFrames mergedRes = dataFrame2.merge(dataFrame1, how='left') print"\nMerged data frame...\n", mergedRes输出结果
这将产生以下输出-
DataFrame1 ... Car 0 BMW 1 Lexus 2 Audi 3 Jaguar DataFrame1 length = 4 DataFrame2 ... Car 0 BMW 1 Lexus 2 Audi 3 Mercedes 4 Jaguar 5 Bentley DataFrame2 length = 6 Merged data frame... Car 0 BMW 1 Lexus 2 Audi 3 Mercedes 4 Jaguar 5 Bentley