这是一些示例数据来说明我的问题
dput(example)
structure(list(ID1 = c("", "abj6498", "", "", "", "", "", "",
"avl5803", "avl3030", "vz30775", "", "", "s883612", "avl7884",
"", "", "avl7905", "", "", "", "", "ty68281", "", "", "z101246",
"", "", "", "", "afh2697", "", "", "", "", "avl3037", "", "",
"", "tw77193", "", "", "tw77053", "avl6702", "", "abj6256", "",
"", "", ""), ID2 = c("", "and7457", "", "", "", "", "", "", "",
"j215736", "vz33290", "", "", "afh4845", "", "", "", "j215809",
"", "", "", "", "ty69088", "", "", "j215813", "", "", "avl6192",
"", "j215807", "", "avl5585", "", "", "avl5441", "", "", "",
"ty70093", "", "", "tr43355", "avl3013", "", "afh3143", "", "",
"", "")), row.names = c(NA, -50L), class = "data.frame")
我有一个example
有两个列的数据框,ID1
我ID2
需要的只是一个新列,该列基于是否包含值中的present
一个或两个ID1
ID2
例如,如果ID1
已满但未满,ID2
则新列present
应具有该值1
,反之亦然,如果两者都包含一个值,present
则将包含2
我尝试了各种使用tidyverse::mutate
andif
语句的方法,但不能完全正确地理解逻辑。