veces una times repetir palabra nombre mensaje como caracter cadena string r repeat

string - times - ¿Cómo repetir una cadena N veces en R?



repetir una cadena php (3)

Con R 3.3.0 , podemos usar strrep desde la base R

strrep("my_string",2) #[1] "my_stringmy_string"

También podemos pasar un vector de valores en times

strrep("my_string",1:3) #[1] "my_string" "my_stringmy_string" #[3] "my_stringmy_stringmy_string"

En Ruby podría repetir una cadena n veces con lo siguiente:

EG "my_string" * 2 -> "my_stringmy_string"

¿Hay una manera igualmente simple de hacer esto en R?


Puedes usar replicate o rep :

replicate(2, "my_string") # [1] "my_string" "my_string" rep("my_string", 2) # [1] "my_string" "my_string"

paste lo pondrá todo junto:

paste(replicate(2, "my_string"), collapse = "") # [1] "my_stringmy_string"


Usa la función stringi paquete stringi

stri_dup("abc",3) [1] "abcabcabc"

También está vectorizado, así que puedes hacer esto:

> stri_dup(letters[1:3],4) [1] "aaaa" "bbbb" "cccc"

Comparacion de rendimiento :)

> microbenchmark(stri_dup("abc",3),paste(replicate(3, "abc"), collapse = "")) Unit: microseconds expr min lq median uq max neval stri_dup("abc", 3) 2.362 3.456 7.0030 7.853 64.071 100 paste(replicate(3, "abc"), collapse = "") 57.131 61.998 65.2165 68.017 200.626 100 > microbenchmark(stri_dup("abc",300),paste(replicate(300, "abc"), collapse = "")) Unit: microseconds expr min lq median uq max neval stri_dup("abc", 300) 6.441 7.6995 10.2990 13.757 45.784 100 paste(replicate(300, "abc"), collapse = "") 390.137 419.7740 440.5345 460.042 573.975 100