R 将多个字符串粘贴到一个字符串上

R 将多个字符串粘贴到一个字符串上,r,paste,R,Paste,我有一个向量 Names以下是一种原始方法: Names <- rep(c("A", "B", "C"), each=3) Stats <- rep(c("Mean", "Median", "InGroupVar"), 3) paste(Names, Stats, sep="_") [1] "A_Mean" "A_Median" "A_InGroupVar" "B_Mean" "B_Median" [6] "B_InGroupVar" "C_M

我有一个向量
Names以下是一种原始方法:

Names <- rep(c("A", "B", "C"), each=3)
Stats <- rep(c("Mean", "Median", "InGroupVar"), 3)
paste(Names, Stats, sep="_")
[1] "A_Mean"       "A_Median"     "A_InGroupVar" "B_Mean"       "B_Median"    
[6] "B_InGroupVar" "C_Mean"       "C_Median"     "C_InGroupVar"

Names我喜欢
sprintf
更好地解决这个问题:

Names <- c("A", "B", "C")

sprintf("%s_%s", 
        rep(Names, each = 3), 
        c("Mean", "Median", "InGroupVar"))
# [1] "A_Mean"       "A_Median"     "A_InGroupVar" "B_Mean"      
# [5] "B_Median"     "B_InGroupVar" "C_Mean"       "C_Median"    
# [9] "C_InGroupVar"

谢谢你这正是我想要的!现在看来很明显,您也可以这样做,而无需再次调用
rep
paste0(名称,“,”,c(“平均值”,“中值”,“InGroupVar”))
当然可以,但我特意选择了显示使用
rep
的不同方法。但是谢谢你的贡献。
do.call(paste, 
        c(expand.grid(
          Names, c("Mean", "Median", "InGroupVar")), 
          sep = "_"))   
# [1] "A_Mean"       "B_Mean"       "C_Mean"       "A_Median"    
# [5] "B_Median"     "C_Median"     "A_InGroupVar" "B_InGroupVar"
# [9] "C_InGroupVar"