我正试图在tidyverse中学习purrr并简短介绍。我有一个看起来像这样的数据集:
DX1 DX2 DX3 DX4 DX5 DX6 ... DX26
2 2 2 2 4 7 ... 3
4
7 3 3 6 4
3 4
6
其中DX是各种ICD9 / 10代码,最多有26种可能的选项。如果不需要经过给定的诊断次数,则其余DX变量将保留为空白。
我需要遍历所有26个DX变量,并创建一个新变量,如果响应为4,则值为1,如果响应为4,则值为0。换句话说,它应类似于: / p>
DX1 DX2 DX3 DX4 DX5 DX6 ... DX26 NewVar
2 2 2 2 4 7 ... 3 1
4 1
7 3 3 6 4 1
3 4 1
6 0
有没有一种简单的方法可以做到这一点?预先感谢您的任何建议!
答案 0 :(得分:0)
您可以使用rowSums()
尝试下面的代码(假设没有数字的地方用NA
填充)
df$NewVar <- rowSums(df==4,na.rm = T)