Python 如何根据熊猫中的某些条件更新数据帧?

Python 如何根据熊猫中的某些条件更新数据帧?,python,python-3.x,pandas,dataframe,Python,Python 3.x,Pandas,Dataframe,我需要一个帮助来更新熊猫数据帧的基础上的一些条件。我将在下面的示例中解释您的场景: 例: df: 在上述数据帧中,作业id 200和300分别依赖于300和400。因此,基于依赖关系,我必须更新cat_值和sub_cat_值。我希望以各自的方式获得最终结果- job_id job_name cat_value sub_cat_value dependency new_cat_value new_sub_cat_value 100 case

我需要一个帮助来更新熊猫数据帧的基础上的一些条件。我将在下面的示例中解释您的场景:

例:

df:

在上述数据帧中,作业id 200和300分别依赖于300和400。因此,基于依赖关系,我必须更新cat_值和sub_cat_值。我希望以各自的方式获得最终结果-

job_id    job_name    cat_value    sub_cat_value    dependency   new_cat_value    new_sub_cat_value
100        case        prog_id       prod_nm   
200        ccaas       acct_id       case_id          300         cmpnt_id            case_nmbr
300        eureka      intr_id       prod2            400         cmpnt_id            case_nmbr 
400        mdm         cmpnt_id      case_nmbr
500        ampil       src_id        status_nmbr      100         prog_id             prod_nm                

排在第500位的工作是从哪里来的?在输入中看不到它df@SreeramTP很抱歉,我错过了那条记录。
作业id=200
中的
new_cat_值
是否应该不等于
intr_id
,而不是
cmpnt_id
?@KenHBS实际上200依赖于300,但300又依赖于400。因此,在ids中,新的\u cat\u值和新的\u sub\u cat\u值将是相同的。@KenHBS它将始终检查循环。。
job_id    job_name    cat_value    sub_cat_value    dependency   new_cat_value    new_sub_cat_value
100        case        prog_id       prod_nm   
200        ccaas       acct_id       case_id          300         cmpnt_id            case_nmbr
300        eureka      intr_id       prod2            400         cmpnt_id            case_nmbr 
400        mdm         cmpnt_id      case_nmbr
500        ampil       src_id        status_nmbr      100         prog_id             prod_nm