【问题标题】:concatenate strings in a character vector based on element names根据元素名称连接字符向量中的字符串
【发布时间】:2018-09-03 02:14:41
【问题描述】:

我有一个命名字符向量 a,我想根据它们的名称连接它的一些元素

a <- c('item 1' = 'first_i1', 'item 1' = 'second_i2', 'item 2' = 'only_i2')
a
     item 1      item 1      item 2 
 "first_i1" "second_i2"   "only_i2" 

使用空格作为分隔符的预期结果

a_out <- c('item 1' = 'first_i1 second_i2', 'item 2' = 'only_i2')
a_out
              item 1               item 2 
"first_i1 second_i2"            "only_i2"

【问题讨论】:

    标签: r string-concatenation


    【解决方案1】:

    我们可以通过使用分组变量作为namesvector 'a' 来连接paste

    tapply(a, names(a), FUN = paste, collapse = ' ')
    #            item 1               item 2 
    #"first_i1 second_i2"            "only_i2" 
    

    【讨论】:

    • @MoeSam 很高兴知道它有效。另一种选择是byc(by(a, names(a), FUN = paste, collapse=' '))
    • 这也有效。考虑到bytapply 的包装器,使用bytapply 有什么优势吗?再次感谢您的帮助。
    • @MoeSam by 有时用于传递多列并对其进行处理
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-21
    • 2011-01-07
    • 1970-01-01
    • 1970-01-01
    • 2020-07-29
    • 2016-02-20
    • 1970-01-01
    相关资源
    最近更新 更多