根据R中相同数据框中的输入列在数据框中的其他列中创建值

时间:2020-08-15 12:52:37

标签: r

我有一个数据字段,其中包含ce,si,ps,se列。我必须根据各自的si列值在ce,ps,se列中创建值,而且“ ce”列值将取决于se列。

例如

  1. 如果si列的值为“ SIRR”,则对应的ce,ps,se列的值分别为Newce_SIRR_1,Newps_SIRR,Newse_SIRR_1,并且“ se”的列值可以具有多个“ ce”值,例如

  2. 如果'se'值为Newse_SIRR_1,则其对应的'ce'列值应为Newce_SIRR_1_1,Newce_SIRR_1_2,Newce_SIRR_1_3

  3. 如果要创建的'ce'编号的输入为3(此输入对于所有se值都是通用的,则必须在每个se下创建3个ce)。下面是相同图片的表示形式。

enter image description here

在上面的图片ce1,ce2中,ce3值将成为数据帧中“ ce”列的一部分。(图片仅供参考)。

列之间存在关系,一个si列值将具有一个ps值,多个se值。同样,一个se列可以具有多个ce值,您也可以在图片中看到相同的内容。

输入:在数据框和整数值下方添加ce本身的编号。在此示例中为3,每个“ se”将有3个“ ce”

si         ps             se          ce         
SIE      dummyps        dummyse     dummyce
SIA      dummyps1      dummyse1     dummyce1
SIC      dummyps2      dummyse2     dummyce2
....  so on

下面是预期的输出数据帧。

si           ps              se             ce         
SIE      Newps_SIE        Newse_SIE_1     Newce_SIE_1_1
SIE      Newps_SIE        Newse_SIE_1     Newce_SIE_1_2
SIE      Newps_SIE        Newse_SIE_1     Newce_SIE_1_3

SIA      Newps_SIA        Newse_SIA_1     Newce_SIA_1_1
SIA      Newps_SIA        Newse_SIA_1     Newce_SIA_1_2
SIA      Newps_SIA        Newse_SIA_1     Newce_SIA_1_3

SIC      Newps_SIC        Newse_SIC_1     Newce_SIC_1_1
SIC      Newps_SIC        Newse_SIC_1     Newce_SIC_1_2
SIC      Newps_SIC        Newse_SIC_1     Newce_SIC_1_3
....  so on

下面是我的上一个问题,但这个问题是上一个问题中的变化

link to my previous question

0 个答案:

没有答案