【问题标题】:R Build a sequence of vectors by index [duplicate]R按索引构建向量序列[重复]
【发布时间】:2018-01-02 16:18:33
【问题描述】:

我有一个关于生成向量的问题。应该有一种奇特的方法来实现这一点,但我有点迷失了。如果有人可以帮助我,我真的很感谢你的帮助。谢谢!

假设我有两个存储索引的向量:

start <- c(11, 26, 55, 110)
end <- c(16, 33, 60, 120)

其中 start 变量是开始索引,而 end 变量是结束索引。

有没有一种奇特的方式来代替 for 循环来创建这样的向量列表:

[11,12,13,14,15,16]
[26,27,28,29,30,31,32,33]
[55,56,57,58,59,60]
[110,111,112,113,114,115,116,117,118,119,120]

【问题讨论】:

    标签: r vector


    【解决方案1】:
    mapply(":", start, end, SIMPLIFY = FALSE)
    #OR
    lapply(1:length(start), function(i) start[i]:end[i])
    #OR
    apply(cbind(start, end), 1, function(x) x[1]:x[2])
    #[[1]]
    #[1] 11 12 13 14 15 16
    
    #[[2]]
    #[1] 26 27 28 29 30 31 32 33
    
    #[[3]]
    #[1] 55 56 57 58 59 60
    
    #[[4]]
    # [1] 110 111 112 113 114 115 116 117 118 119 120
    

    【讨论】:

      猜你喜欢
      • 2014-11-13
      • 2021-09-05
      • 1970-01-01
      • 2017-08-09
      • 2018-04-20
      • 1970-01-01
      • 2020-07-05
      • 2010-10-24
      • 2019-07-05
      相关资源
      最近更新 更多