【问题标题】:r - retrieve only the first word and the following letter from a stringr - 仅检索字符串中的第一个单词和后面的字母
【发布时间】:2016-03-07 13:07:00
【问题描述】:

我只想从字符串中检索第一个单词和后面的字母。情况如下:

我的数据框中有一列,其中有某人的名字和姓氏。

例子:

FORD Mickael

但我只想知道他的姓氏和名字的第一个字母(在我们的示例中为FORD M)。

我只设法从字符串中获取第一个单词,而不是后面的字母(使用 stringr 包中的 word 函数)。

【问题讨论】:

  • 您需要重现您的数据(而不是描述它)并包含您尝试解决此问题的代码。

标签: r


【解决方案1】:

你可以试试:

require(stringr)
x<-"FORD Mickael"
str_extract(x,"^\\w+\\s+\\w")
#[1] "FORD M"

【讨论】:

    【解决方案2】:
    tab <- data.frame(name = "FORD Mickael")
    tab$name <- gsub("(\\w)\\w*$", "\\1", tab$name)
    # [1] "FORD M"
    

    【讨论】:

      【解决方案3】:

      另一种选择是

      sub("[a-z]+$", "", x)
      #[1] "FORD M"
      

      数据

      x <- "FORD Mickael"
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2021-03-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-12-29
        • 1970-01-01
        相关资源
        最近更新 更多