如何根据列值中的一个单词过滤数据?

时间:2017-06-01 21:17:36

标签: r filter extract rows

我有一个简化的数据框,只有2k行。我想知道是否有办法通过LocationID列中的值提取数据或过滤数据。我想提取其中包含“Creek”或“River”一词的行,这些行将省略其他名称(例如Banana Forest值)。

 LocationID, Code
 Alk River, 232
 Bala River, 4324
 Banana Forest, 344
 Cake River, 432
 Alk Creek, 6767
 Cake Creek, 766

谢谢!

1 个答案:

答案 0 :(得分:1)

我们可以使用tidyverse

执行此操作
library(dplyr)
library(stringr)
df1 %>% 
    filter(str_detect(LocationID, '\\b(River|Creek)\\b'))
#   LocationID Code
#1  Alk River  232
#2 Bala River 4324
#3 Cake River  432
#4  Alk Creek 6767
#5 Cake Creek  766