在R脚本语言中,如何编写行文本,例如,下面两行

Hello
World

到一个名为output.txt的文件?


当前回答

丑陋的系统选项

ptf <- function (txtToPrint,outFile){system(paste(paste(paste("echo '",cat(txtToPrint),sep = "",collapse = NULL),"'>",sep = "",collapse = NULL),outFile))}
#Prints txtToPrint to outFile in cwd. #!/bin/bash echo txtToPrint > outFile

其他回答

你可以用一个语句来做

cat("hello","world",file="output.txt",sep="\n",append=TRUE)

简单的write.table()怎么样?

text = c("Hello", "World")
write.table(text, file = "output.txt", col.names = F, row.names = F, quote = F)

参数col.names = FALSE和row.names = FALSE确保排除txt中的行名和列名,参数quote = FALSE排除txt中每行开头和结尾的引号。 要将数据读入,可以使用text = readLines("output.txt")。

根据最佳答案:

file <- file("test.txt")
writeLines(yourObject, file)
close(file)

注意,youobject需要是字符串格式;如果需要,使用as.character()进行转换。

但是对于每次保存尝试来说,输入太多了。让我们在RStudio中创建一个代码片段。

在Global Options >> Code >> Snippet中,键入以下内容:

snippet wfile
    file <- file(${1:filename})
    writeLines(${2:yourObject}, file)
    close(file)

然后,在编码过程中,输入wfile并按Tab键。

Tidyverse版本与管道和write_lines()从阅读器

library(tidyverse)
c('Hello', 'World') %>% write_lines( "output.txt")
fileConn<-file("output.txt")
writeLines(c("Hello","World"), fileConn)
close(fileConn)