R rep seq onde o número de linhas não é múltiplo de comprimento seq

Eu tenho um quadro de dados com 1666 linhas. Eu gostaria de adicionar uma coluna com uma sequência repetitiva de1:5 usar comcut() fazer validação cruzada. Ficaria assim:

   Y      x1       x2       Id1
   1      .15      3.6       1
   0      1.1      2.2       2
   0      .05      3.3       3
   0      .45      2.8       4
   1      .85      3.1       5
   1      1.01     2.9       1
  ...      ...     ...      ...

Eu tentei as duas maneiras a seguir, mas recebo uma mensagem de erro, pois parece adicionar apenas números em incrementos do totalseq() argumento:

>   tr2$Id1 <- rep(seq(1,5,1), (nrow(tr2)/5))
Error in `
>   tr2$Id1 <- rep(seq(1,5,1), (nrow(tr2)/5))
Error in `$<-.data.frame`(`*tmp*`, "Id", value = c(1, 2, 3, 4, 5, 1, 2,  : 
  replacement has 1665 rows, data has 1666
>   tr2$Id1 <- rep(seq(1,5,1), (nrow(tr2)/5) + (nrow(tr2)%%5))
Error in `$<-.data.frame`(`*tmp*`, "Id", value = c(1, 2, 3, 4, 5, 1, 2,  : 
  replacement has 1670 rows, data has 1666
lt;-.data.frame`(`*tmp*`, "Id", value = c(1, 2, 3, 4, 5, 1, 2, : replacement has 1665 rows, data has 1666 > tr2$Id1 <- rep(seq(1,5,1), (nrow(tr2)/5) + (nrow(tr2)%%5)) Error in `
>   tr2$Id1 <- rep(seq(1,5,1), (nrow(tr2)/5))
Error in `$<-.data.frame`(`*tmp*`, "Id", value = c(1, 2, 3, 4, 5, 1, 2,  : 
  replacement has 1665 rows, data has 1666
>   tr2$Id1 <- rep(seq(1,5,1), (nrow(tr2)/5) + (nrow(tr2)%%5))
Error in `$<-.data.frame`(`*tmp*`, "Id", value = c(1, 2, 3, 4, 5, 1, 2,  : 
  replacement has 1670 rows, data has 1666
lt;-.data.frame`(`*tmp*`, "Id", value = c(1, 2, 3, 4, 5, 1, 2, : replacement has 1670 rows, data has 1666

Alguma sugestão?

questionAnswers(2)

yourAnswerToTheQuestion