
Segue abaixo uma possível solução: f <- Vectorize(function(x, i) { x <- x + i p1 <- x %/% 10 p2 <- x %% 10 p1 + p2 }, 'i') vi <- c(1,2,5,6) f(vi, 1:9) Att, Rubem ________________________________ De: "andrebvs@bol.com.br" <andrebvs@bol.com.br> Para: "r-br@listas.c3sl.ufpr.br" <r-br@listas.c3sl.ufpr.br> Enviadas: Sábado, 2 de Agosto de 2014 18:03 Assunto: [R-br] Ciclo de um vetor a partir de restrição dada Olá colegas, Gostaria de saber como fazer uma função no R, de modo que, quando eu some o valor 1 a um dado vetor inicial, o vetor seguinte seja um vetor resultante da soma do vetor inicial + 1, porém, com a restrição de que: se o último valor desse vetor resultante for igual ou superior ao valor 10, que este retorne para o valor inicial do vetor. Como exemplo, a idéia é: # Vetor Inicial: vi <- c(1,2,5,6) # Vetores resultates: 2,3,6,7 (somando + 1 ao vetor inicial) 3,4,7,8 (somando + 1 ao vetor anterior) 4,5,8,9 (somando + 1 ao vetor anterior) 5,6,9,1 (somando + 1 ao vetor anterior, neste caso, como iria ser 10 o último valor, volta-se para o valor inicial de vi, e assim por diante) 6,7,1,2 7,8,2,3 8,9,3,4 9,1,4,5 1,2,5,6 # observe aqui, que voltei ao vetor inicial, dando a idéia de um ciclo. Então, como faço uma função no R, de forma que eu tenha todos os vetores resultantes a partir de um vetor inicial dado? desde já agradeço! Att. André _______________________________________________ R-br mailing list R-br@listas.c3sl.ufpr.br https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.