在R中的同一行上打印string和variables内容

有没有办法在同一行上打印文本和variables内容? 例如,

wd <- getwd() print("Current working dir: ", wd) 

我无法find任何有关允许我这样做的语法。

您可以使用paste print

 print(paste0("Current working dir: ", wd)) 

cat

 cat("Current working dir: ", wd) 

还有sprintf()

 sprintf("Current working dir: %s", wd) 

要打印到控制台输出,请使用cat()message()

 cat(sprintf("Current working dir: %s\n", wd)) message(sprintf("Current working dir: %s\n", wd)) 

或者使用message

 message("Current working dir: ", wd) 

@ agstudy的答案在这里更合适

最简单的方法是使用paste()

 > paste("Today is", date()) [1] "Today is Sat Feb 21 15:25:18 2015" 

paste0()会导致以下结果:

 > paste0("Today is", date()) [1] "Today isSat Feb 21 15:30:46 2015" 

注意,string和x之间没有默认的分隔符。 在string末尾使用空格是一个快速修复:

 > paste0("Today is ", date()) [1] "Today is Sat Feb 21 15:32:17 2015" 

然后结合print()

 > print(paste("This is", date())) [1] "This is Sat Feb 21 15:34:23 2015" 

要么

 > print(paste0("This is ", date())) [1] "This is Sat Feb 21 15:34:56 2015" 

正如其他用户所说,你也可以使用cat()

正如其他用户所说,cat()可能是最好的select。

@krlmlrbuild议使用sprintf(),它是目前排名第三的答案。 sprintf()不是一个好主意。 从R文档:

格式string传递给操作系统的sprintf函数,不正确的格式会导致后者崩溃R进程。

在cat或其他选项上使用sprintf()没有什么好的理由。