【问题标题】:Adding brackets in specific position R在特定位置添加括号 R
【发布时间】:2020-01-22 00:23:46
【问题描述】:

我正在处理一个数据框,其中包含有关市政当局及其各自州的信息,如下所示:

Municipality <- c('Ariquemes', 'Borba', 'Bagre')
State <- c('RO', 'AM', 'PA')
df <- data.frame(Municipality, State)

我使用函数paste 创建了一个包含市和州名称的新列:

df$Municipality_State<-paste(df$Municipality, df$State)
df>
Municipality     State     Municipality State
Ariquemes        RO        Ariquemes PA
Borba            AM        Borba AM
Bagre            PA        Bagre PA

现在,我想在州名称周围添加方括号,以便与我正在处理的另一个数据库合并。我正在寻找的输出是这样的:

 Municipality     State     Municipality_State
    Ariquemes        RO        Ariquemes (PA)
     Borba            AM        Borba (AM)
     Bagre            PA        Bagre (PA)

我会很感激你的 cmets 问候。

【问题讨论】:

    标签: r dataframe


    【解决方案1】:

    不用太复杂,我们可以在粘贴列的同时添加括号。

    df$Municipality_State <- paste0(df$Municipality, " (", df$State, ")")
    
    df
    #  Municipality State Municipality_State
    #1    Ariquemes    RO     Ariquemes (RO)
    #2        Borba    AM         Borba (AM)
    #3        Bagre    PA         Bagre (PA)
    

    【讨论】:

    • 感谢您的贡献@Ronak。您的代码删除了应该在括号内的状态名称。
    • @phill_9933 抱歉,我没听清楚。您没有得到我的答案中显示的输出?这不是你的预期输出吗?
    • 不是真的,@Ronak Shah。例如,在第一行中,我得到:#1 Ariquemes |反渗透|阿里克梅斯 ( )
    • 对不起,@Ronak Shah。你的代码是对的!将您的代码复制到我的控制台时,我犯了一个错误。真的很抱歉。
    【解决方案2】:

    我们可以使用sprintf

    df$Municipality_State <- sprintf("%s (%s)", df$Municipality, df$State)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-11-10
      • 2020-03-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多