如何解决重复数值向量
假设我有以下数值向量
z = 1:3
f <-c(rep(z[1],3),rep(z[2],rep(z[3],3))
[1] 1 1 1 2 2 2 3 3 3
现在假设如下:
z =1:i #i is an interger
如何编写一个函数,以获得与第一行代码相同的输出格式? 我尝试了一个 for 循环,但没有得到想要的结果。
解决方法
用each = 3
试试> rep(1:3,each = 3)
[1] 1 1 1 2 2 2 3 3 3
kronecker
或 > kronecker(1:3,rep(1,3))
[1] 1 1 1 2 2 2 3 3 3
replicate
或 > c(t(replicate(3,1:3)))
[1] 1 1 1 2 2 2 3 3 3
@State
,
使用 for 循环:
z <- 3
vector <- c()
for (i in 1:z){
vector <- append(vector,rep(i,z))
}
> vector
[1] 1 1 1 2 2 2 3 3 3
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。