给定一个数据集,其中一个值可能位于数据框中的任何一组列中:
df <- data.frame(h1=c('a', 'b', 'c', 'a', 'a', 'b', 'c'), h2=c('b', 'c', 'd', 'b', 'c', 'd', 'b'), h3=c('c', 'd', 'e', 'e', 'e', 'd', 'c'))
如何获得指定哪些行包含目标值的逻辑向量?在这种情况下,搜索“b”,我想要一个逻辑向量,其中行 (1,2,4,6,7) 为 TRUE。
真实的数据集更大更复杂,所以我试图避免 for 循环。
谢谢
编辑:
这似乎有效。
>apply(df, 1, function(x) {'b' %in% as.vector(t(x))}) -> i
> i
[1] TRUE TRUE FALSE TRUE FALSE TRUE TRUE