首页 > 解决方案 > python:将特定索引处的行从一个数据帧插入到另一个数据帧

问题描述

我有两个数据框如下:

df1:

    A   B   C   D   E
0   8   6   4   9   7
1   2   6   3   8   5
2   0   7   6   5   8

df2:

    M   N   O   P   Q   R   S   T
0   1   2   3
1   4   5   6
2   7   8   9
3   8   6   5
4   5   4   3

我从以下数据中取出了一段数据df1

>data_1 = df1.loc[0:1]
>data_1
    A   B   C   D   E
0   8   6   4   9   7
1   2   6   3   8   5

现在我需要将它插入data_1到(行,列)df2的特定位置。Index(0,P)有什么办法吗?我不想打扰df2.

我可以提取每个单元格的单个值并执行此操作,但由于我必须针对大型数据集执行此操作,因此不可能按单元格执行此操作。

细胞法:

>var1 = df1.iat[0,1]
>var2 = df1.iat[0,0]

>df2.at[0, 'P'] = var1
>df2.at[0, 'Q'] = var2

标签: pythonpandasdataframe

解决方案


如果您指定所有列,则可以按如下方式进行:

df2.loc[0:1, ['P', 'Q', 'R', 'S', 'T']] = df1.loc[0:1].values

结果数据框:

    M   N   O     P    Q    R    S    T
0   1   2   3   8.0  6.0  4.0  9.0  7.0
1   4   5   6   2.0  6.0  3.0  8.0  5.0
2   7   8   9
3   8   6   5
4   5   4   3

推荐阅读