#r
#r
Вопрос:
Я пытаюсь создать последовательность 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 4, 4, 4, 4, 4
с помощью команды seq()
. Может ли кто-нибудь сказать мне, возможно ли это сделать?
Ответ №1:
Да, путем переноса seq()
внутри вызова с rep()
использованием его each
аргумента:
> rep(seq(0,4), each=5)
[1] 0 0 0 0 0 1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4
>
Ответ №2:
Рискуя не ответить на поставленный вопрос, вам не нужен seq() для этого. rep() выполнит эту работу.
> rep(0:4, each=5)
[1] 0 0 0 0 0 1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4
>
Комментарии:
1. Это функционально идентично тому, что я опубликовал за восемь минут до вас.
Ответ №3:
Ну, вы должны использовать rep
функцию, но вот решение, которое использует seq
:
floor( seq(from=0, to=4 0.999, length.out=5*(4 1)) )
#### [1] 0 0 0 0 0 1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4
И команда floor
, которая округляет числа до наименьшего целого числа.
Комментарии:
1. Но… он не только использует
seq
.