我有两个数据:
现在我想找出来自df2的哪些基因存在于df1中,在df1中添加一个新的列,用1标记/高亮显示匹配的基因,用0标记不匹配的基因。
我通常使用子集函数来找出列表中有哪些基因。我还知道如何创建一个只有匹配的基因等的新表,但是我真的不知道如何在同一个文件中“标记它们”,因此我想添加一个1或0的列。但也可以是对的,也可以是假的。
我希望我自己解释一下,如果不是这样的话,让我知道
谢谢你,洛尔
发布于 2022-10-24 07:36:11
使用%in%,然后转换为整数:
df1$match <- as.integer(df1$gene %in% df2$gene)注意jay.sf提到的注意事项
在%中使用%时要小心,如果有NA,它会产生意想不到的结果。在% 1中尝试NA %,它应该给NA,但给假。
%in%是一个很好的特性。然而,它通常被推荐作为==的多元替代。这是一个难题;在==产生NA的地方,%in%不会,通过不知情,天真的用户可能会无中生有地产生观察。
https://stackoverflow.com/questions/74109531
复制相似问题