我有两个数据帧DF1和DF2,在特定索引处追加从DF2到DF1有条件的行的最佳方法是什么?

jcloudz1

我试图在dataframe1中每个组的末尾将dataframe2中的行追加到dataframe1中,但仅将dataframe2中的那些行与dataframe 1中的列值匹配(在这种情况下:与“ Name”匹配)。

如果我有给定的dataframe1:

data = {
    'Name':['Jill', 'Jill', 'Jill', 'Jill', 'Ryan',
            'Ryan','Lilian', 'Jack', 'Jack', 'Jack'],
    'Age': [15, 20, 25, 30, 23, 23, 45, 24, 65, 115]
}

df1 = pd.DataFrame(data)

df1

data2 = {
        'Name':['Jack', 'Ryan',
            'Lilian', 'Jill'],
        'Gender': ['m', 'm', 'f', 'f']
}

df2 = pd.DataFrame(data2)

df2

我希望看到:

  Name   Age Gender
0 Jill   15  
1 Jill   20
2 Jill   25
3 Jill   30
4 Jill       f
5 Ryan   23
6 Ryan   23  
7 Ryan       m
8 Lilian 45
9 Lilian     f
10 Jack  24
11 Jack  65
12 Jack  115 
13 Jack      m

我找到了上次出现的groupby组的原始索引,并将其放入列表中。

使用 df1.index.values.tolist()

当时,我们正在考虑尝试设置某种循环,以在添加到之前检查名称是否匹配index+1

工商管理硕士

这应该工作

compare = df1.Name.unique()
df3 = df2[df2['Name'].isin(compare)]
df4 = df1.append(df3)
df5 = df4.sort_values(['Name','Age'])
df5 = df5.reset_index(drop=True)
print(df5)

输出:

      Age Gender    Name
0    24.0    NaN    Jack
1    65.0    NaN    Jack
2   115.0    NaN    Jack
3     NaN      m    Jack
4    15.0    NaN    Jill
5    20.0    NaN    Jill
6    25.0    NaN    Jill
7    30.0    NaN    Jill
8     NaN      f    Jill
9    45.0    NaN  Lilian
10    NaN      f  Lilian
11   23.0    NaN    Ryan
12   23.0    NaN    Ryan
13    NaN      m    Ryan

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

r在df1中添加列,并在df2中添加行数(有条件)

来自分类Dev

如何合并两个数据帧的x和y行,但列应并排(df2 $ y)并排(df1 $ x)?

来自分类Dev

如何合并两个数据帧的x和y行,但列应并排(df2 $ y)并排(df1 $ x)?

来自分类Dev

将df1列中值的两个数据帧合并为df2和df1列中逗号分隔的值.Column2 = df2.Column2

来自分类Dev

有没有一种方法可以匹配两个数据帧中的序列号,并将df2中的系列列表(行)添加到df1中的新列(Python,pandas)

来自分类Dev

根据2个数据帧(df1,df2)之间的匹配列更新一个DF(df1)的行

来自分类Dev

从df2中提取与df1的两列信息匹配的所有行

来自分类Dev

将df1列中值的两个数据帧合并为df2列中逗号分隔的值

来自分类Dev

通过调用df2中列出的df1索引来创建数据框

来自分类Dev

根据df2中的索引将行保留在df1中

来自分类Dev

通过检查使基于DF2的DF1突变

来自分类Dev

通过比较df1和df2的内容从熊猫数据帧获取切片

来自分类Dev

根据R中df1和df2之间的匹配在df1中添加新列

来自分类Dev

创建基于DF2且超出DF1且行和行相同的数据框(特殊合并条件)

来自分类Dev

如何使用 df1 和 df2 获得像 DF3 和 DF4 这样的输出?

来自分类Dev

使用df1中的值从df2中检索值,其中df2列和索引包含一系列值

来自分类Dev

反向代码以df2中的查找值为条件选择df1中的vars

来自分类Dev

如何遍历 df1 列以查看 df2 中满足条件的频率?

来自分类Dev

合并两个data.frames并将df1的某些列的值替换为df2的值

来自分类Dev

比较两个Dataframe列并显示df1中可用的结果,而df2中不可用

来自分类Dev

在 df1 中创建一个新的分类变量,它考虑了一个 df1 变量和多个具有多个条件的 df2 变量

来自分类Dev

仅当df2中的列中的值位于df1中时,才将2个数据帧附加在一起

来自分类Dev

如果df2中的loc为True,则df1中的python和值

来自分类Dev

Pandas:如何正确处理 df2 中的行 = df1 中的列?

来自分类Dev

仅当df1中的行ID值也存在于df2中时才追加行

来自分类Dev

根据df1上的条件创建pd系列,并报告df2或df3中的值

来自分类Dev

从df1中删除出现在df2中的元素

来自分类Dev

将df1附加到df2的熊猫得到0s / NaNs结果

来自分类Dev

如何检查df2中的对是否与R中的df1对(含)成对?

Related 相关文章

  1. 1

    r在df1中添加列,并在df2中添加行数(有条件)

  2. 2

    如何合并两个数据帧的x和y行,但列应并排(df2 $ y)并排(df1 $ x)?

  3. 3

    如何合并两个数据帧的x和y行,但列应并排(df2 $ y)并排(df1 $ x)?

  4. 4

    将df1列中值的两个数据帧合并为df2和df1列中逗号分隔的值.Column2 = df2.Column2

  5. 5

    有没有一种方法可以匹配两个数据帧中的序列号,并将df2中的系列列表(行)添加到df1中的新列(Python,pandas)

  6. 6

    根据2个数据帧(df1,df2)之间的匹配列更新一个DF(df1)的行

  7. 7

    从df2中提取与df1的两列信息匹配的所有行

  8. 8

    将df1列中值的两个数据帧合并为df2列中逗号分隔的值

  9. 9

    通过调用df2中列出的df1索引来创建数据框

  10. 10

    根据df2中的索引将行保留在df1中

  11. 11

    通过检查使基于DF2的DF1突变

  12. 12

    通过比较df1和df2的内容从熊猫数据帧获取切片

  13. 13

    根据R中df1和df2之间的匹配在df1中添加新列

  14. 14

    创建基于DF2且超出DF1且行和行相同的数据框(特殊合并条件)

  15. 15

    如何使用 df1 和 df2 获得像 DF3 和 DF4 这样的输出?

  16. 16

    使用df1中的值从df2中检索值,其中df2列和索引包含一系列值

  17. 17

    反向代码以df2中的查找值为条件选择df1中的vars

  18. 18

    如何遍历 df1 列以查看 df2 中满足条件的频率?

  19. 19

    合并两个data.frames并将df1的某些列的值替换为df2的值

  20. 20

    比较两个Dataframe列并显示df1中可用的结果,而df2中不可用

  21. 21

    在 df1 中创建一个新的分类变量,它考虑了一个 df1 变量和多个具有多个条件的 df2 变量

  22. 22

    仅当df2中的列中的值位于df1中时,才将2个数据帧附加在一起

  23. 23

    如果df2中的loc为True,则df1中的python和值

  24. 24

    Pandas:如何正确处理 df2 中的行 = df1 中的列?

  25. 25

    仅当df1中的行ID值也存在于df2中时才追加行

  26. 26

    根据df1上的条件创建pd系列,并报告df2或df3中的值

  27. 27

    从df1中删除出现在df2中的元素

  28. 28

    将df1附加到df2的熊猫得到0s / NaNs结果

  29. 29

    如何检查df2中的对是否与R中的df1对(含)成对?

热门标签

归档