首页 > 解决方案 > 使用计数的命名向量创建重复向量序列

问题描述

我有一个向量,resp包含名称和counts计数。我想制作一个向量,它resp以对应的次数重复 in 中的元素counts,并将其分配给一个变量feedback

resp <- c("yes", "no", "maybe")
counts <- c(5, 10, 10)

期望的输出

> feedback
 [1] "yes"    "yes"    "yes"    "yes"    "yes"    "no"     "no"     "no"     "no"     "no"     "no"     "no"    
[13] "no"     "no"     "no"     "may be" "may be" "may be" "may be" "may be" "may be" "may be" "may be" "may be"
[25] "may be"

我可以使用for循环执行以下操作:


resp <- c("yes", "no", "maybe")
counts <- c(5, 10, 10)
names(counts) <- resp

feedback <- c()

for (i in 1:length(resp)){
  feedback <- c(feedback, rep(resp[i], counts[i]))
}

apply有没有办法使用函数族来做到这一点?

标签: r

解决方案


rep( resp, times = counts)

使用基函数rep


推荐阅读