6

私が実行するとき:

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

これは奇妙です。これらのコマンドは両方とも同じ機能を実行する必要があると思います。誰か助けてくれませんか?

ありがとう!

4

2 に答える 2

14

から?rep

'times'の代わりに'length.out'を指定できます。この場合、'x'は、この長さのベクトルを作成するために必要な回数だけ繰り返されます。両方が指定されている場合、「length.out」が優先され、「times」は無視されます。

于 2012-08-08T18:15:56.977 に答える
-2

rep(1:4,,rep(4,4),length.out=16)あなたが探している結果が得られます。これをより簡単に記述する方法は、 ですrep(1:4,,16,4)

于 2014-05-09T02:13:50.640 に答える