【问题标题】:Where else can .Last hide? I deleted .Rprofile and .Last still runs.Last 还能藏在哪里?我删除了 .Rprofile 和 .Last 仍然运行
【发布时间】:2016-07-22 21:14:21
【问题描述】:

我曾经在我的.Rprofile 中有一个dbConnect 声明为.First 和一个dbDisconnect 声明为.Last。我不再需要这些,所以我将它们从.Rprofile 中删除,但由于dbDisconnect 语句,当我退出时R 挂起。我可以通过q(runLast=F) 退出。

> q()
Error in .Last() : could not find function "dbDisconnect"

我在我的根目录中放了一个空的.Rprofile,但我仍然收到此错误。我有默认的Rprofile.site

这是什么原因造成的?有解决办法吗? FWIW,我在带有 R 3.3.1 的 Windows 8.1 上。


我的.Rprofile 现在是空白的。但它曾经包含following

library(rJava)
.jinit(parameters="-Xmx8g")
library(RJDBC)

user <- "my_username"
pass <- '{SAS002}DBCC5712369DE1C65B19864C1564FB850F398DCF'

wrdsconnect <- function(user=user, pass=pass){
    drv <- JDBC("com.sas.net.sharenet.ShareNetDriver", "/usr/local/sas/jdbc_driver/sas.intrnet.javatools.jar",          identifier.quote="`")
    wrds <- dbConnect(drv, "jdbc:sharenet://wrds-cloud-h.wharton.private:8551/", user, pass)
    return(wrds)
}

.First <- function(){
    wrds <<- wrdsconnect(user=user, pass=pass)
}
.Last <- function(){
    dbDisconnect(wrds)
}

【问题讨论】:

  • @ZheyuanLi -- 现在是空白,但我可以把旧版本放在问题中。

标签: r rprofile


【解决方案1】:

您需要的所有信息都包含在?Startup 中。

您可能刚刚删除了当前用户的主文件夹.Rprofile。也许您想在程序文件的/etc 目录中搜索Rprofile.site 文件。

file.path(Sys.getenv("R_HOME"), "etc", "Rprofile.site") 

【讨论】:

    【解决方案2】:

    .Last 也可以隐藏在.Rdata 中。我的文本编辑器在它的程序文件夹中打开 R 脚本,我用这个 .Last 保存了一个工作空间。每次我在我的文本编辑器(我的常用)中从脚本打开 R 时,它都会加载这个.Last

    无论您对 .RprofileRprofile.site 做什么,这将继续,直到您删除此 .Rdata 或从另一个目录开始。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2022-01-23
      • 1970-01-01
      • 2011-04-23
      • 2013-05-30
      • 1970-01-01
      • 2014-06-19
      • 1970-01-01
      相关资源
      最近更新 更多