String 如何在R中重复一个字符串N次?

String 如何在R中重复一个字符串N次?,string,r,repeat,String,R,Repeat,在Ruby中,我可以使用以下命令重复字符串n次: 例如“我的字符串”*2->“我的字符串我的字符串” 有没有一种同样简单的方法可以在R中实现这一点?您可以使用replicate或rep: replicate(2, "my_string") # [1] "my_string" "my_string" rep("my_string", 2) # [1] "my_string" "my_string" 粘贴将把它放在一起: paste(replicate(2, "my_string"), coll

在Ruby中,我可以使用以下命令重复字符串n次:

例如
“我的字符串”*2->“我的字符串我的字符串”


有没有一种同样简单的方法可以在R中实现这一点?

您可以使用
replicate
rep

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

rep("my_string", 2)
# [1] "my_string" "my_string"
粘贴
将把它放在一起:

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

使用
stringi
软件包中的
stri\u dup
功能

stri_dup("abc",3)
[1] "abcabcabc"
它也是矢量化的,因此您可以执行以下操作:

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


使用
r3.3.0
,我们可以从
base R

strrep("my_string",2)
#[1] "my_stringmy_string"
我们还可以在
时间内传递值向量

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

stringr
库提供函数
str\u dup()

它在字符串和时间上进行矢量化:

str_dup(c("A", "B", "C"), 2:4)

[1] "AA"   "BBB"  "CCCC"

在我等待手指计划下一行输入时,我无法检测到微秒之间的差异,但是+1表示其他选项。我以前看过这个软件包,但还没有使用过。但是如果你必须使用这个函数1000次,它会有所不同,不是吗?:)
str_dup("my_string", 2)

[1] "my_stringmy_string"
str_dup(c("A", "B", "C"), 2:4)

[1] "AA"   "BBB"  "CCCC"