【问题标题】:How can I save text to a file in R?如何将文本保存到 R 中的文件中?
【发布时间】:2011-09-07 12:44:49
【问题描述】:

我有一个 R 函数,可以使用cat() 生成 LaTeX 代码(输出为 LaTeX 代码),而现在我想保存这些 LaTeX 代码,但我不知道哪个函数可以保存这些 LaTeX代码...

【问题讨论】:

  • 你确定 Sweave 没有帮助吗?

标签: r text save


【解决方案1】:

如果您的输出是字符向量(即您使用类似cat(<something>) 将其写入控制台),您可以使用writeLines 函数,如下所示:

writeLines(<something>,"filename.txt")

然而,在 R 中制作 LaTeX 文件的最佳方法是使用 Sweave 或制作 brew 模板。

【讨论】:

    【解决方案2】:

    我喜欢使用sink()函数:

    latex.code <- function(){
       cat("\\begin{align}\n")
       cat("[X'X]^{-1}X'y\n")
       cat("\\end{align}\n")
    }
    sink(file='ols.txt')
    latex.code()
    sink()
    

    编辑:显然,您可以通过更改 sink 参数来选择保存文件的文件路径,例如:sink(file='c:/Users/Eva/Desktop/ols.txt'),或sink(file='~/ols.txt')

    【讨论】:

      【解决方案3】:

      假设你的 R 函数返回一个 LaTeX 代码的字符串(如果你把它变得更具体,你的问题会得到很大改善,并带有一些具体的例子),你可以使用 cat() 函数将类似的内容输出到文件中,并使用 file= 参数指定文件。您可以通过 ?cat 阅读。

      【讨论】:

      • 是的,我的 R 函数使用 cat() 返回的是字符串,但我不知道如何保存这个 cat()...
      • 我试过了,if cat(@@@@, file="argument"),我的文件保存在哪里??
      • @user471448 这是我如何在我的 unix 机器上使用 cat 的示例。 cat(sum(1,2), "/Users/ditkin/Desktop/foo.txt")
      • 听从我的建议(和发布指南)并提供一个最小的可重现示例(即我可以自己运行的代码),我会尽力提供更多帮助。
      • @Eva 如果未设置绝对路径,所有文件都会保存到setwd()
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-25
      • 2013-12-26
      • 2020-06-23
      相关资源
      最近更新 更多