所以我试图遍历矩阵并找到与给定模板匹配的名称(完全匹配或NA)
for (i in 3:3000){
if(all(template == dataset[i,colnames(dataset)%in%template],na.rm=TRUE)) print(dat[i,1])
}
##The 2nd line returns TRUE if all variables match or are NA
'模板'变量是一个可变长度。在下面的示例中,它是12列宽。变量' thing_to_match'又是数据集中变量的一个子集。
"ID" "V1" "V5" "V7" "V10" "V1000"
Bob A B NA J U
此向量(thing_to_match)仅是来自"数据集"的特殊变量的子集。我希望这个for循环遍历完整数据集并返回所有变量匹配,或者对于特殊变量子集是NA。
>dataset
ID V1 V2 V3...V1000
Joe H A Z...G
Jim J T W ...N
Kathy A B U...U
假设Kathy与Bob完美匹配,因为她的所有变量都匹配Bob或者是NA。我的问题是上面的代码不起作用。我知道我的数据集中有大约50个匹配变量,但它只返回1(在这种情况下,它返回" Bob"谁也在数据集中)。