функция rep в R
когда я выполняю:
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 ответов
С ?rep
‘."out" может быть дано вместо "times", в этом случае " x’ повторяется столько раз, сколько необходимо для создания вектора эта длина. Если обе даны, то длина.выход имеет приоритет и "времена" игнорируются.
rep(1:4,,rep(4,4),length.out=16)
выдаст результат, который вы ищете. Более простой способ написать это -rep(1:4,,16,4)
.