在调试 R 程序时,我想将输出信息打印到屏幕上以进行调试。例如,如何在同一行中生成类似以下内容。
"loop= 5", "a=5","b=5"
在调试 R 程序时,我想将输出信息打印到屏幕上以进行调试。例如,如何在同一行中生成类似以下内容。
"loop= 5", "a=5","b=5"
接受@Matthew 的建议,问题可能只是您试图print
一次在多个变量/字符串上使用。这行不通。
如果要print
与字符串一起使用,则需要提供一个单独的字符串。最有效的方法是使用paste()
.
还有很多替代方案,例如cat
和sprintf
。这是一个简短的例子:
让我们创建一些示例变量来输出 i <- 3 a <- letters[1:5]
您可能正在尝试这样做:
# This will *NOT* work
print("loop = ", i, "a = ", a[[i]])
而是尝试以下方法之一:(注意:paste0
与 using 相同paste(..., sep="")
)
# using print( paste0 (.) )
print(paste0("loop = ", i, ", a = ", a[[i]]))
# [1] "loop = 3, a = c
# using cat()
cat("loop = ", i, ", a = ", a[[i]])
# loop = 3 , a = c
# using sprintf
sprintf("loop = %d, a = %s", i, a[[i]])
# [1] "loop = 3, a = c"