Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R-筛选任何行并显示所有列_R - Fatal编程技术网

R-筛选任何行并显示所有列

R-筛选任何行并显示所有列,r,R,我想创建一个输出,显示具有包含字符串值的行的列名。假设如下 Animals Sex I like Dogs Male I like Cats Male I like Dogs Female I like Dogs Female Data Missing Male Data Missing Male 我发现了一个很好的答案,David Arenburg

我想创建一个输出,显示具有包含字符串值的行的列名。假设如下

       Animals        Sex
       I like Dogs    Male
       I like Cats    Male
       I like Dogs    Female
       I like Dogs    Female
       Data Missing   Male
       Data Missing   Male 
我发现了一个很好的答案,David Arenburg提供了一个很好的答案,但我想知道是否有可能得到一个不显示所有行的输出。所以,如果我想找到一个字符串“数据丢失”,我想看到的输出是

       Animals        
       Data Missing

而不是

       Anmials        Sex
       Data Missing   Male
       Data Missing   Male 
我还发现使用诸如df$columnName之类的过滤器是可行的,但我有一个大文件和大量的列名,键入列名将是乏味的。假设字符串“Data Missing”也在其他列中,并且可能存在不同类型的字符串。这就是为什么我喜欢David Arenburg的答案,所以请记住,我并没有上面给出的两个专栏


干杯

如果我们只想要它匹配的第一行,请使用
match

data[match("Data Missing", data$Animals), "Animals", drop = FALSE]
#     Animals  
#5 Data Missing

您可以做的一件事是对“数据丢失”进行grep,如下所示:

x <- apply(data, 2, grep, pattern = "Data Missing")
lapply(x, length) > 1
你想要的结果。它也很好,因为它检查所有列,您提到的是您想要的

x <- apply(data, 2, grep, pattern = "Data Missing")
lapply(x, length) > 1
Animal 
TRUE