【问题标题】:creation of a vector out of matrixes using a loop使用循环从矩阵中创建向量
【发布时间】:2015-04-26 13:34:32
【问题描述】:

我试图通过使用循环组合多个矩阵来创建一个向量。 如果我手动操作,它看起来像这样:

vector = c(
           matrix(labels[1],ccl$size[1]), 
           matrix(labels[2],ccl$size[2]), 
           matrix(labels[3],ccl$size[3]),
           matrix(labels[4],ccl$size[4]),
           matrix(labels[5],ccl$size[5]))

labels 是具有给定元素数量的向量,ccl$size 也是如此。问题是没有循环似乎接受函数的任何子字符串作为有价值的输入。

编辑:我试过了

c(for(i in repeats) 
{matrix(labels[i],ccl$size[i]),}
)

编辑2:

输入 标签:c(2,1,3)

ccl$大小:c(12,10,7)

期望的输出 c(2,2,2,2,2,2,2,2,2,2,2,2,1,1,1,1,1,1,1,1,1,1,3,3, 3,3,3,3,3)

【问题讨论】:

  • 那你是在找rep吗?
  • 换句话说,就是rep(labels, ccl$size)
  • 你需要知道'matrix'的第一个参数是值,第二个参数是行数。

标签: r loops matrix vector


【解决方案1】:

您正在寻找rep:

v1 <- c(2,1,3)
v2 <- c(12, 10, 7)

rep(v1, v2)
#  [1] 2 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 3 3 3 3 3 3 3

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-09
    • 1970-01-01
    • 2014-07-27
    • 1970-01-01
    • 2014-09-03
    • 2018-11-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多