基于行中的列值以及df中其他行中的列值创建新列?

克里斯90

我有以下DF:

id | name | status | country | ref_id
3    Bob    False    Germany    NaN
5    422     True    USA         3
7    Nick    False   India       NaN
6    Chris   True    Australia   7
8    324     True    Africa      28
28   Tim     False   Canada      53

我想为每一行添加一个新列,如果该行的状态为True,如果该行的ref_id存在于另一行的id列中,并且该行的状态为False,请在该列。

因此,下面的预期输出将是:

    id | name | status | country | ref_id | new
    3    Bob    False    Germany    NaN     NaN
    5    422     True    USA         3      Bob
    7    Nick    False   India       NaN    NaN
    6    Chris   True    Australia   7      Nick
    8    324     True    Africa      28     Tim
    28   Tim     False   Canada      53     NaN

我下面有用于其他用途的代码,它们仅用于过滤状态True的以及id列中存在的id_reference值,如下所示:

(df.loc[df["status"]&df["id_reference"].astype(float).isin(df.loc[~df["status"], "id"])])

但是我也试图计算一个新列,如前所述,如果该列中有一个名称,则使用名称的值

谢谢!

贝尼

让我们尝试

df['new']=df.loc[df.status,'ref_id'].map(df.set_index('id')['name'])
df
   id   name  status    country  ref_id   new
0   3    Bob   False    Germany     NaN   NaN
1   5    422    True        USA     3.0   Bob
2   7   Nick   False      India     NaN   NaN
3   6  Chris    True  Australia     7.0  Nick
4   8    324    True     Africa    28.0   Tim
5  28    Tim   False     Canada    53.0   NaN

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用其他列的某些行中的值创建新列

来自分类Dev

使用其他列的某些行中的值创建新列

来自分类Dev

根据其他列与df中其他行的关系更改一行中的df列值

来自分类Dev

使用其他行中的值在DataFrame中创建新列

来自分类Dev

根据其他列中的NA值创建新列

来自分类Dev

根据其他列中的值创建新列

来自分类Dev

如何基于其他列的值在data.table中创建新列

来自分类Dev

通过查找其他行中的值来创建新的pandas数据框列

来自分类Dev

根据其他列行中的过滤值,在pandas数据框中创建一个新列

来自分类Dev

Excel宏基于行中其他两个列的值写入值

来自分类Dev

熊猫-创建新列,该列的值取自同一数据框中的其他行

来自分类Dev

Python Pandas:基于组内的最大值创建新列,但使用其他(字符串)列中的值

来自分类Dev

如何遍历Pandas中的列值并基于同一行中多个列的值创建新的观察值?

来自分类Dev

基于主键从其他列中的数据创建新列

来自分类Dev

基于其他列在 Sql Server 中创建新列

来自分类Dev

如何创建基于同一行中另一列的值命名的新列?

来自分类Dev

根据其他行中的重复项创建新列

来自分类Dev

熊猫使用其他列中的值创建新列,并根据列值进行选择

来自分类Dev

如何基于列值创建其他行或数据框

来自分类Dev

如果行下方重复,请使用其他列中的值,直到找到新值

来自分类Dev

使用基于列vale的字典中的值在df中创建新列

来自分类Dev

使用基于列vale的字典中的值在df中创建新列

来自分类Dev

如何在Pandas数据框中的其他列中填充基于新列的值

来自分类Dev

如何基于R中的行值在data.frame中创建新列?

来自分类Dev

如何根据sql server中其他列中的值插入新行?

来自分类Dev

基于其他列将列中的值相乘

来自分类Dev

基于其他列将列中的值相乘

来自分类Dev

基于R中其他列的列值总和

来自分类Dev

Excel:基于其他列的列中的条件格式值

Related 相关文章

  1. 1

    使用其他列的某些行中的值创建新列

  2. 2

    使用其他列的某些行中的值创建新列

  3. 3

    根据其他列与df中其他行的关系更改一行中的df列值

  4. 4

    使用其他行中的值在DataFrame中创建新列

  5. 5

    根据其他列中的NA值创建新列

  6. 6

    根据其他列中的值创建新列

  7. 7

    如何基于其他列的值在data.table中创建新列

  8. 8

    通过查找其他行中的值来创建新的pandas数据框列

  9. 9

    根据其他列行中的过滤值,在pandas数据框中创建一个新列

  10. 10

    Excel宏基于行中其他两个列的值写入值

  11. 11

    熊猫-创建新列,该列的值取自同一数据框中的其他行

  12. 12

    Python Pandas:基于组内的最大值创建新列,但使用其他(字符串)列中的值

  13. 13

    如何遍历Pandas中的列值并基于同一行中多个列的值创建新的观察值?

  14. 14

    基于主键从其他列中的数据创建新列

  15. 15

    基于其他列在 Sql Server 中创建新列

  16. 16

    如何创建基于同一行中另一列的值命名的新列?

  17. 17

    根据其他行中的重复项创建新列

  18. 18

    熊猫使用其他列中的值创建新列,并根据列值进行选择

  19. 19

    如何基于列值创建其他行或数据框

  20. 20

    如果行下方重复,请使用其他列中的值,直到找到新值

  21. 21

    使用基于列vale的字典中的值在df中创建新列

  22. 22

    使用基于列vale的字典中的值在df中创建新列

  23. 23

    如何在Pandas数据框中的其他列中填充基于新列的值

  24. 24

    如何基于R中的行值在data.frame中创建新列?

  25. 25

    如何根据sql server中其他列中的值插入新行?

  26. 26

    基于其他列将列中的值相乘

  27. 27

    基于其他列将列中的值相乘

  28. 28

    基于R中其他列的列值总和

  29. 29

    Excel:基于其他列的列中的条件格式值

热门标签

归档