【问题标题】:break string into element of vector将字符串分解为向量的元素
【发布时间】:2019-11-14 05:22:19
【问题描述】:

我已经运行了以下 R 代码来将 char 'group' 与数字序列结合起来

paste0('group', seq(1, 5))

输出是

"group1" "group2" "group3" "group4" "group5"

如何使结果为向量或列表,如下所示?

c("group1", "group2", "group3", "group4", "group5")

【问题讨论】:

  • 您的输入 (paste0('group', seq(1, 5))) 和预期输出 (c("group1", "group2", "group3", "group4", "group5")) 有什么区别?如果您使用identical 进行检查,则输出为 TRUE,identical(paste0('group', seq(1, 5)), c("group1", "group2", "group3", "group4", "group5"))
  • 你想要逗号吗?不是已经是向量了吗?电话里所以说不清楚。我认为您只是对 R 如何打印向量感到困惑。
  • 如果要输出 R 命令以创建该样式的对象,请使用 dput,例如 dput(paste0('group', 1:5))

标签: r


【解决方案1】:

代码:

c("group1", "group2", "group3", "group4", "group5")

...和代码:

  paste0('group', seq(1, 5))s

.... 将创建一个对象,其打印输出如下所示:

[1] "group1" "group2" "group3" "group4" "group5"

逻辑测试函数is.vector返回TRUE:

> is.vector( c("group1", "group2", "group3", "group4", "group5") )
[1] TRUE

根据最严格的可用测试,您的代码和目标的值是“相同的”:

 identical( paste0('group', seq(1, 5)) ,  c("group1", "group2", "group3", "group4", "group5"))
[1] TRUE

所以没有“如何”。你的代码中已经有了方法。

(您应该理解,R 术语中的“向量”是指除了名称之外没有其他属性的对象。在is.vector 测试下,单列列表为 TRUE。)

【讨论】:

    猜你喜欢
    • 2015-01-27
    • 1970-01-01
    • 2014-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-25
    • 1970-01-01
    • 2020-11-08
    相关资源
    最近更新 更多