你总是在write.csv中使用row.names = F吗?更改R(基本)函数内的默认值

nzc*_*ops 9 csv r defaults write.table

无法在线查看解决方案,但我认为这可能很常见.

  • write.csv我基本上总是有参数row.name设置为F.是否有可能运行一次线和更新会话的其余参数的默认值?
  • 我试过paste <- paste(sep="")哪个运行并且没有返回错误但似乎什么也没做(并且没有破坏该paste功能).这是另外一个,我总是设置sep=""paste...
  • 就像我一直exclude=NULL在使用时一样table,我可以看到N/A值.

编辑:所以,我正在寻找一个解决方案,因为如果可能的多种功能工作:paste,write.csv,table和其他功能,如这些.

Jos*_*ich 8

paste <- paste(sep="")将输出paste()放入名为"paste"的对象中.你需要做这样的事情.

paste <- function (..., sep = "", collapse = NULL) {
  base::paste(..., sep=sep, collapse=collapse)
}
Run Code Online (Sandbox Code Playgroud)

您也可以查看Defaults包中的这类内容,但它目前不适用于您的两个示例.

  • @joshua ...但在你的例子中,你必须调用base :: paste,而不仅仅是粘贴!正如它现在写的那样,它会导致无限递归...... (3认同)
  • 关于答案的第一部分,你为什么要做崩溃时所做的事情? (2认同)

Hon*_*Ooi 5

试试这个:

paste <- paste
formals(paste)$sep <- ""
Run Code Online (Sandbox Code Playgroud)

这将创建一个新的副本,paste在您的工作空间,然后修改它的默认值sep"".随后的调用paste将使用修改后的副本,因为它位于搜索路径中的基础环境之前.

  • 查看`write.csv`的来源可能会让你哭泣 (2认同)