【发布时间】:2017-02-07 16:09:33
【问题描述】:
我有一个医生就诊表,如果有多个诊断,有时会有多个记录用于同一个遭遇键 (Enc_Key),例如:
Enc_Key | Patient_Key | Enc_Date | Diag
123 789 20160512 asthma
123 789 20160512 fever
123 789 20160515 coughing
546 013 20160226 flu
564 444 20160707 laceration
789 226 20160707 asthma
789 226 20160707 fever
我正在尝试根据字符变量Diag 的值创建一个指示变量Diag_Ind,但我需要在整个遭遇中应用它。换句话说,如果我为记录获得Diag 的“哮喘”值,那么我想将Diag_Ind 的“1”应用于具有相同Enc_Key 的每条记录,如下所示:
Enc_Key | Patient_Key | Enc_Date | Diag | Diag_Ind
123 789 20160512 asthma 1
123 789 20160512 fever 1
123 789 20160515 coughing 1
546 013 20160226 flu 0
564 444 20160707 laceration 0
789 226 20160707 asthma attack 1
789 226 20160707 fever 1
我似乎无法找到将这个二进制指标应用于多条记录的方法。我一直在使用类似于这样的一行代码:
tbl$Diag_Ind <- ifelse(grepl('asthma',tolower(tbl$Diag)),1,0)
但这只会将值“1”分配给具有该 Diag 值的单个记录,例如:
Enc_Key | Patient_Key | Enc_Date | Diag | Diag_Ind
123 789 20160512 asthma 1
123 789 20160512 fever 0
123 789 20160515 coughing 0
546 013 20160226 flu 0
564 444 20160707 laceration 0
789 226 20160707 asthma attack 1
789 226 20160707 fever 0
我不确定如何将其应用于具有相同 Enc_Key 值的其余记录
【问题讨论】:
标签: r binary records indicator