R中的rep函数

时间:2012-08-08 18:10:43

标签: r rep

当我表演时:

rep(1:4, rep(4,4))

我得到了

1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 

这是预料之中的。但是当我尝试将长度固定为16(这是输出的长度)时,如下所示:

rep(1:4, rep(4,4), length.out = 16)

我得到了

1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4

这很奇怪。我认为这两个命令都应该执行相同的功能。有人可以帮忙吗?

谢谢!

2 个答案:

答案 0 :(得分:14)

来自?rep

  

'length.out'可以代替'times',在这种情况下'x'        重复多次,以创建一个矢量        这个长度。如果两者都给出,'length.out'优先考虑        '时间'被忽略了。

答案 1 :(得分:-2)

rep(1:4,,rep(4,4),length.out=16)会给出您正在寻找的结果。更简单的方法是rep(1:4,,16,4)