R如何将不同类型的变量打印到一个txt文件中

时间:2019-03-22 11:02:17

标签: r printing

我有一个lm模型,一个vif函数的数值向量和一些字符变量。

gvmodel<-gvlma(lmFit)
VIF<-sqrt(vif(lmFit))
Str1<-"Original R-square=".567"
Str2<-"Cross-validated R-Square=.123"

我想将所有内容打印到一个txt文件中。我尝试了catcapture.output

cat(gvmodel,VIF,Str1, file="E:/.../text.txt")
capture.output(paste(gvmodel,VIF,...,sep=""),file="E:/.../text.txt")

显然这没有用。任何人如何将它们打印到单个txt文件中?谢谢

2 个答案:

答案 0 :(得分:1)

Sink()有效。接收txt文件的路径和名称,运行产生文本输出的任何命令,它们将被捕获在txt文件中。最后sink()关闭。

 sink("E:/.../Sink.txt")
 gvmodel
 sqrt(vif(ModeName))
 sink()

答案 1 :(得分:0)

在您的代码中gvmodel<-gvlma(lmFit)产生gvlma对象。不能直接将其直接打印到.txt文件。您可以使用as.character()选项先 将其转换为字符:

gvmodel<-gvlma(lmFit)
gvmodel <- as.character(gvmodel)

例如可以使用cat打印结果。因此,如果将所有这些放在一起:

gvmodel<-gvlma(lmFit)
gvmodel <- as.character(gvmodel)
VIF<-sqrt(vif(lmFit))
Str1<-"Original R-square=.567"
Str2<-"Cross-validated R-Square=.123" # NB the corrected quotation marks

cat(gvmodel,VIF,Str1, file="yourfile.txt",sep="\t")