cat() 函数
如果需要输出结果的拼接,我们可以使用 cat() 函数:
> cat(1, "加", 1, "等于", 2, '\n')
1 加 1 等于 2
cat() 函数会在每两个拼接元素之间自动加上空格。
R 语言输出到文件的方法十分多样,而且很方便。
cat() 函数支持直接输出结果到文件:
cat("RUNOOB", file="/Users/runoob/runoob-test/r_test.txt")
这个语句不会在控制台产生结果,而是把 "RUNOOB" 输出到 "/Users/runoob/runoob-test/r_test.txt" 文件中去。
file 参数可以是绝对路径或相对路径,建议使用绝对路径,Windows 路径格式为 D:\\r_test.txt。
cat("RUNOOB", file="D:\\r_test.txt")
注意:这个操作是"覆盖写入"操作,请谨慎使用,因为它会将输出文件的原有数据清除。如果想"追加写入",请不要忘记设置 append 参数:
cat("GOOGLE", file="/Users/runoob/runoob-test/r_test.txt", append=TRUE)
执行以上代码后,打开 r_test.txt 文件内容如下:
RUNOOBGOOGLE
sink()
sink() 函数可以把控制台输出的文字直接输出到文件中去:
sink("/Users/runoob/runoob-test/r_test.txt")
这条语句执行以后,任何控制台上的输出都会被写入到 "/Users/runoob/runoob-test/r_test.txt" 文件中去,控制台将不会显示输出。
注意:这个操作也是"覆盖写入"操作,会直接清除原有的文件内容。
如果我们依然像保留控制台的输出,可以设置 split 属性:
sink("/Users/runoob/runoob-test/r_test.txt", split=TRUE)
如果想取消输出到文件,可以调用无参数的 sink :
sink()
sink()的功能展示:这是控制台默认情况下的输出
> for (i in 1:5)
+ print(i)
[1] 1
[1] 2
[1] 3
[1] 4
[1] 5
控制台输出的同时输出到文本
> sink("r_test.txt", split=TRUE) # 控制台同样输出
> for (i in 1:5)
+ print(i)
[1] 1
[1] 2
[1] 3
[1] 4
[1] 5
> sink()
那么产生的r_test.txt脚本在哪里?在默认路径下~/Documents 下