【问题标题】:ddply summarise string operationddply 汇总字符串操作
【发布时间】:2012-09-06 20:52:31
【问题描述】:

我现在正在使用ddply。处理数字非常容易。例如取子组的均值或标准差。

但是我很难处理字符串。我想将每个子组中同一列中的字符串组合起来,但我做不到。我试过cbindpaste等。有人可以提供帮助吗?

【问题讨论】:

  • 如果没有具体的、可重复的示例,不,我们可能无法提供太多帮助。
  • 请提供reproducible example 以获得帮助...

标签: r plyr


【解决方案1】:

在您的粘贴语句中添加collapse=""

ddply(mtcars, .(carb), summarize, cyl_concatenated = paste(cyl, collapse = ""))
#  carb cyl_concatenated
#1    1          4664444
#2    2       8444888444
#3    3              888
#4    4       6686688888
#5    6                6
#6    8                8

【讨论】:

    【解决方案2】:

    我看到 Dason 有办法。我宁愿将单独的东西分开,并建议:

     ddply(mtcars, .(carb), summarize, cyl_list = list(as.character(cyl)))
    #-----------
      carb                     cyl_list
    1    1          4, 6, 6, 4, 4, 4, 4
    2    2 8, 4, 4, 4, 8, 8, 8, 4, 4, 4
    3    3                      8, 8, 8
    4    4 6, 6, 8, 6, 6, 8, 8, 8, 8, 8
    5    6                            6
    6    8                            8
    

    您还可以修改 Dason 以使用 collapse=", " 看起来与上面相同,但结构不同。 list() 在使用该示例时需要转换为字符,否则您将获得因子变量的整数编码。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多