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

拉胡尔·拉詹(Rahul rajan)

我有df如下所示的数据框

  df
DATA ELEMENT    PORT    LOCATION    P_RISK  S_RISK  W_RISK  Total_Risk
Event 1000     SGSIN                      0       0       0       0
Event 2000     MYKUL                      0       1       0       1
Event 3000                PARIS           0       0       1       1
Event 4000                LYON            1       0       0       1
Event 1000     USNYK                      0       0       0       0
Event 2000     INCOK                      0       0       1       1
Event 3000                MUMBAI          0       0       0       0
Event 4000                LAHORE          1       0       0       1
Event 2000     INCOK                      0       0       0       0
Event 3000                PARIS           0       0       0       0

健康)状况

*如果Data Element为1000或2000,并且Total Risk为1,则comment使用具有风险名称+端口的新列填充

*如果Data Element为3000或4000,并且Total Risk为1,则comment用With填充新列Risk Name + LOCATION

*如果Total Risk为0,则填充无风险标识

预期产量

df
    DATA ELEMENT    PORT    LOCATION    P_RISK  S_RISK  W_RISK  Total_Risk  Comment
    Event 1000     SGSIN                      0       0       0       0     No Risk Indentified
    Event 2000     MYKUL                      0       1       0       1     S_RISK  predicted at  MYKUL
    Event 3000                PARIS           0       0       1       1     W_RISK predicted at  PARIS
    Event 4000                LYON            1       0       0       1     P_RISK  predicted at  LYON
    Event 1000     USNYK                      0       0       0       0     No Risk Indentified
    Event 2000     INCOK                      0       0       1       1     W_RISK predicted at  INCOK
    Event 3000                MUMBAI          0       0       0       0     No Risk Indentified
    Event 4000                LAHORE          1       0       0       1     P_RISK  predicted at  LAHORE
    Event 2000     INCOK                      0       0       0       0     No Risk Indentified
    Event 3000                PARIS           0       0       0       0     No Risk Indentified

如何才能做到这一点?

贝尼

dotnp.where

s2=df.filter(like='_RISK')
s2=s2.dot(s2.columns)
df['new']=np.where(s2=='' ,'No Risk Indentified',s2 + ' predict at ' +df.PORT.mask(df.PORT=='',df.LOCATION))
df
Out[35]: 
    DATA  ELEMENT   PORT  ... W_RISK  Total_Risk                     new
0  Event     1000  SGSIN  ...      0           0     No Risk Indentified
1  Event     2000  MYKUL  ...      0           1   S_RISKpredict atMYKUL
2  Event     3000         ...      1           1   W_RISKpredict atPARIS
3  Event     4000         ...      0           1    P_RISKpredict atLYON
4  Event     1000  USNYK  ...      0           0     No Risk Indentified
5  Event     2000  INCOK  ...      1           1   W_RISKpredict atINCOK
6  Event     3000         ...      0           0     No Risk Indentified
7  Event     4000         ...      0           1  P_RISKpredict atLAHORE
8  Event     2000  INCOK  ...      0           0     No Risk Indentified
9  Event     3000         ...      0           0     No Risk Indentified
[10 rows x 9 columns]

方法2

s2=df.filter(like='_RISK').ne(0).stack()                                                                             
s2=s2[s2].reset_index(level=1)                                                                                       
df['new']=(s2['level_1'] + ' predict at ' +df.PORT.mask(df.PORT=='',df.LOCATION)).fillna('No Risk Indentified')

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在pandas数据框中填充新列,该数据框从其他列获取输入

来自分类Dev

基于Pandas数据框中其他列的值范围的列总和

来自分类Dev

从Pandas数据框中的其他列创建新列

来自分类Dev

根据其他列中的值在python 3(pandas)数据框中创建新列

来自分类Dev

如何根据数据框中其他列的值填充列?

来自分类Dev

数据框中的匹配列基于其他数据框中的列中的值

来自分类Dev

如何在Pandas方法链表达式中基于其他列的值替换数据子集中的值

来自分类Dev

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

来自分类Dev

如何在不重复其他列值的情况下在pandas数据框中扩展列表

来自分类Dev

如何创建新列,将值与其他数据框中的标头匹配

来自分类Dev

从其他数据框熊猫填充数据框中的列的NAN值

来自分类Dev

如何使用基于Python中其他列值的值填充列?

来自分类Dev

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

来自分类Dev

使用rnorm函数从数据框中创建基于新列的其他列

来自分类Dev

基于其他列条件和其他列计算的数据框新列值

来自分类Dev

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

来自分类Dev

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

来自分类Dev

如何在具有分层索引的熊猫数据框中添加和计算(基于其他列)子列?

来自分类Dev

基于多个其他列的条件式替换数据框列中的值-R

来自分类Dev

如何在数据框中添加缺少的日期并在python中填充其他对应的列?

来自分类Dev

Python pandas:如何在数据框列中的现有值之间填充值?

来自分类Dev

通过添加其他列中的值在Panda数据框中创建新列

来自分类Dev

如何在特定的 Pandas 数据框列中查找值,然后将该行中的其他值存储在单独的变量中

来自分类Dev

如何基于Python Pandas中的其他列在DataFrame中创建新列?

来自分类Dev

R:如何在数据框列中获取值,具体取决于序列和其他列中的值

来自分类Dev

如何基于熊猫数据框中的其他列值更新“余额”列

来自分类Dev

如何用其他数据框中的ID替换数据框中的2列值?

来自分类Dev

计算pandas数据框中的共存,以得到按其他列值分组的列值

来自分类Dev

如何在 Pandas 中创建逻辑以根据其他列中的现有值创建新列?

Related 相关文章

  1. 1

    在pandas数据框中填充新列,该数据框从其他列获取输入

  2. 2

    基于Pandas数据框中其他列的值范围的列总和

  3. 3

    从Pandas数据框中的其他列创建新列

  4. 4

    根据其他列中的值在python 3(pandas)数据框中创建新列

  5. 5

    如何根据数据框中其他列的值填充列?

  6. 6

    数据框中的匹配列基于其他数据框中的列中的值

  7. 7

    如何在Pandas方法链表达式中基于其他列的值替换数据子集中的值

  8. 8

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

  9. 9

    如何在不重复其他列值的情况下在pandas数据框中扩展列表

  10. 10

    如何创建新列,将值与其他数据框中的标头匹配

  11. 11

    从其他数据框熊猫填充数据框中的列的NAN值

  12. 12

    如何使用基于Python中其他列值的值填充列?

  13. 13

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

  14. 14

    使用rnorm函数从数据框中创建基于新列的其他列

  15. 15

    基于其他列条件和其他列计算的数据框新列值

  16. 16

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

  17. 17

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

  18. 18

    如何在具有分层索引的熊猫数据框中添加和计算(基于其他列)子列?

  19. 19

    基于多个其他列的条件式替换数据框列中的值-R

  20. 20

    如何在数据框中添加缺少的日期并在python中填充其他对应的列?

  21. 21

    Python pandas:如何在数据框列中的现有值之间填充值?

  22. 22

    通过添加其他列中的值在Panda数据框中创建新列

  23. 23

    如何在特定的 Pandas 数据框列中查找值,然后将该行中的其他值存储在单独的变量中

  24. 24

    如何基于Python Pandas中的其他列在DataFrame中创建新列?

  25. 25

    R:如何在数据框列中获取值,具体取决于序列和其他列中的值

  26. 26

    如何基于熊猫数据框中的其他列值更新“余额”列

  27. 27

    如何用其他数据框中的ID替换数据框中的2列值?

  28. 28

    计算pandas数据框中的共存,以得到按其他列值分组的列值

  29. 29

    如何在 Pandas 中创建逻辑以根据其他列中的现有值创建新列?

热门标签

归档