【问题标题】:Removing values that contain a string using dplyr (R) [duplicate]使用 dplyr (R) 删除包含字符串的值 [重复]
【发布时间】:2018-07-15 17:33:05
【问题描述】:

我当前的代码只删除 exact 值为“未分配”的值,而我希望它删除 包含的任何值“未分配”。

这是我的代码

Newdata <- mydata %>%
  filter(taxon !="unassigned")

我要从中删除任何“未分配”值的列称为分类单元。

谢谢!

【问题讨论】:

  • 尝试使用正则表达式。我相信像 grepl("unassigned", taxon) 这样的东西应该会给你你想要的东西

标签: r select filter dplyr contain


【解决方案1】:

grepl 答案:

Newdata <- mydata %>%
  filter(!grepl(".*unassigned.*",taxon))

【讨论】:

    【解决方案2】:

    试试这样的:

    library(tidyverse)
    library(stringr)
    # Create sample data
    test <- c("hello", "world", "unassigned", "unassigned2", "unassigned3")
    # Create data frame
    df <- data.frame(test)
    # Filter dataframe named "df" at column "test" for strings containing "unassigned"
    df %>% filter(str_detect(test, "unassigned"))
    

    这个输出

             test
    1  unassigned
    2 unassigned2
    3 unassigned3
    

    【讨论】:

      猜你喜欢
      • 2017-06-19
      • 2016-07-16
      • 2018-08-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-04
      相关资源
      最近更新 更多