使用来自两个数据帧、不同行的信息合并为一个数据帧

2024-10-02 02:45:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我有两只熊猫

我希望获得一个新的数据框,其中包含文件、每行中两个文件的值和参数

“第一个数据帧”中的行如下所示:

  • 文件1文件5值1值2

“第二个数据帧”中的行如下所示:

  • 文件1 paramA paramB
  • 文件_5 paramX paramY

我需要像这样的东西:

  • 文件1文件5值1值2参数参数B参数X参数

(它以“第一个数据帧”开始,并将行中的“第二个数据帧”(文件1文件5)中的参数连接起来) 对于“第一个数据帧”中的每一行

我找到了一个使用循环的解决方案。 它的速度非常慢(构建一个连接行,并将其添加到一个新的数据帧中,逐行

是否有一些特殊的功能,我可以结合起来,以执行它没有循环

我的慢解

for row in range(fist.shape[0]):
    file_1 = fist['file_1'][row]
    file_2 = fist['file_2'][row]
    df0 = fist.iloc[row]
    df1 = second.loc[second['FILE']==file_1,"paramA":"paramZ"]
    df2 = second.loc[second['FILE']==file_2,"paramA":"paramZ"]
    df1 = df1.add_suffix('_1')
    df2 = df2.add_suffix('_2')
    output.append(pd.concat([df0, df1, df2],axis=1))

Tags: 文件数据add参数locfilerowdf1

热门问题