在R脚本语言中,如何编写行文本,例如,下面两行
Hello
World
到一个名为output.txt的文件?
在R脚本语言中,如何编写行文本,例如,下面两行
Hello
World
到一个名为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键。
其他回答
一个简单的writeLines()是什么?
txt <- "Hallo\nWorld"
writeLines(txt, "outfile.txt")
or
txt <- c("Hallo", "World")
writeLines(txt, "outfile.txt")
Tidyverse版本与管道和write_lines()从阅读器
library(tidyverse)
c('Hello', 'World') %>% write_lines( "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
为了完善可能性,你可以使用writeLines()和sink(),如果你想:
> sink("tempsink", type="output")
> writeLines("Hello\nWorld")
> sink()
> file.show("tempsink", delete.file=TRUE)
Hello
World
对我来说,使用print()似乎总是最直观的,但如果你这样做,输出将不是你想要的:
...
> print("Hello\nWorld")
...
[1] "Hello\nWorld"
fileConn<-file("output.txt")
writeLines(c("Hello","World"), fileConn)
close(fileConn)