Write a list, as seen in R console output, into a

2019-06-21 20:47发布

问题:

I have problem with writing a list into a text file in r. Here is my code:

library(e1071)
mydata = read.table("TRAIN.txt", sep = ",", header = FALSE)
model <- naiveBayes(as.factor(V1) ~., data = my data)

and I want to write the "model" into a text file. Here is the "model" format:

A-priori probabilities:
Y
   0        1 
0.703125 0.296875 

Conditional probabilities:
V2
Y         [,1]      [,2]
0  0.1327792 1.1571522
1 -0.1276267 0.9334735

V3
Y         [,1]      [,2]
0 -0.2414282 1.0982461
1 -0.2269481 0.7594525

and I tried the following:

write(model, "TEST.txt")

and got the following error:

Error in cat(list(...), file, sep, fill, labels, append) : 
argument 1 (type 'list') cannot be handled by 'cat'

and then I tried

lapply(model, cat, file='test.txt', append=TRUE)

and got the same error.

回答1:

y1 <- rnorm(100)
x1 <- rnorm(100)
model.out <- lm(y1~x1)

sink("~/Desktop/TEST.txt", type=c("output", "message"))
model.out
sink(NULL)

Based on this answer: How to save all console output to file in R?



标签: r cat lapply