【问题标题】:Can not load the `model1` function of the processR package in a Jupyter Notebook无法在 Jupyter Notebook 中加载 processR 包的“model1”函数
【发布时间】:2020-02-19 00:03:21
【问题描述】:

我对整个 R 编程非常陌生,并试图关注 this tutorial,其中 model1 函数用于查找三个变量之间的 Andrew F. Hayes 相关性。如教程中所示,我已安装软件包:

  1. install.packages("devtools")
  2. install.packages("processR")
  3. devtools::install_github("markhwhiteii/processr")

我也按照以下步骤操作:

set.seed(1839)
var1 <- rnorm(100)
cond <- rbinom(100, 1, .5)
var2 <- var1 * cond + rnorm(100)
df3 <- data.frame(var1, var2, cond)
head(df3)

相应地。但是,运行时:

mod1result <- model1(iv = "var1", dv = "var2", mod = "cond", data = df3)

我收到错误消息:

模型 1 中的错误(iv = “var1”,dv = “var2”,mod = “cond”,数据 = df3):找不到函数 “model1” 追溯:

正在运行

mod1result <- processr::model1(iv = "var1", dv = "var2", mod = "cond", data = df3)

loadNamespace(name) 中的错误:没有名为“处理器”的包 追溯:

奇怪的是,同样的代码昨天才可以工作,现在却不行了。如果您能帮助我了解问题所在以及如何解决,我将不胜感激。

P.S.1.我不确定.libPaths() 是什么,但由于某种原因它在我的mac 上返回了两条路径:

  • /usr/local/lib/R/3.6/site-library
  • /usr/local/Cellar/r/3.6.2/lib/R/library

这是否意味着我安装了两个 R 并且这是导致上述问题的主要原因?

P.S.2. 好的。这似乎是 Jupyter 的错,因为终端中的一切都运行良好。

P.S.3. 似乎在终端中工作的是:

  • sudo r
  • devtools::install_github("markhwhiteii/processr")
  • library(processr) 注意小写 rprocessr

P.S.4. 我不确定这是否是 Jupyter 的错。

P.S.5. 我也尝试在 Windows 上安装这些软件包。情况更糟。我无法通过这个问题:

错误:无法从 GitHub 安装“处理器”: (从警告转换而来)无法删除之前安装的软件包“digest”

我认为解决这个问题的关键可能是了解这些包之间的区别:

  • install.packages("processR")
  • devtools::install_github("markhwhiteii/processr")
  • devtools::install_github("cardiomoon/processR")

【问题讨论】:

  • 由于软件包似乎安装为processR(大写R),您是否尝试过processR::model1(...)
  • @steveb 是的,我很确定我把所有东西都放对了。
  • 我看到了问题,您需要使用devtools::install_github("markhwhiteii/processr") 安装,因为这与processR 不同。本教程使用devtools::install_github("markhwhiteii/processr")。完成后,应定义model1
  • 从文档中,.libPaths() 函数获取/设置在其中查找包的库树。这并不意味着您安装了两个 R。

标签: r jupyter correlation processr


【解决方案1】:

好的,经过几个小时的反复试验,我想我有一个混乱的解决方法,但不是解决方案!

  • 在一个终端运行sudo r
  • 在另一个中运行jupyter notebook并打开一个R笔记本(我想你已经安装了内核)
  • 现在您应该明白 devtools::install_github("markhwhiteii/processr")install.packages("processR") 是两个不同的软件包,并且您每次在 Jupyter Notebook 中重新启动内核时都安装了这两个软件包

  • 先在R终端安装devtools::install_github("markhwhiteii/processr")

  • 现在在 Jupyter 端,您应该能够library(processr) 并运行processr::model1
  • 接下来在R终端上安装install.packages("processR")
  • 现在导入library(processR)
  • 现在应该可以运行pmacroModel等函数了

基本上你需要processrprocessR

顺便说一句,同样的问题是 R 终端。你必须以sudo 的身份运行并按照上述步骤让一切正常运行!

【讨论】:

    【解决方案2】:

    从您引用的教程页面中,按以下方式安装processr(不是processR):

    # Run this if devtools isn't installed.
    # install.packages("devtools")
    
    # Run to install "processr"
    devtools::install_github("markhwhiteii/processr")
    

    成功完成后,processr::model1 将被定义。

    当运行这篇文章中的代码时,它会产生一个结果:

    set.seed(1839)
    var1 <- rnorm(100)
    cond <- rbinom(100, 1, .5)
    var2 <- var1 * cond + rnorm(100)
    df3 <- data.frame(var1, var2, cond)
    head(df3)
    
    mod1result <- processr::model1(iv = "var1", dv = "var2", mod = "cond", data = df3)
    
    mod1result
    ## # A tibble: 6 x 5
    ##   term          estimate std.error statistic       p.value
    ##   <chr>            <dbl>     <dbl>     <dbl>         <dbl>
    ## 1 intercept       0.133      0.146     0.916 0.362        
    ## 2 var1            0.0696     0.156     0.445 0.657        
    ## 3 cond           -0.173      0.200    -0.865 0.389        
    ## 4 interaction     0.854      0.213     4.01  0.000118     
    ## 5 when cond = 0   0.0696     0.156     0.445 0.657        
    ## 6 when cond = 1   0.924      0.144     6.40  0.00000000577
    
    

    【讨论】:

    • 感谢您的回答。但是我确实已经安装了该软件包。再次尝试安装返回:Skipping install of 'processr' from a github remote, the SHA1 (7d3a3860) has not changed since last install. Use force = TRUE` 强制安装`
    • 如果force = TRUE 不起作用,也许运行devtools::uninstall("processr)
    • 另外,您是否尝试在安装后重新启动您的 R 会话?
    • 我刚刚又重新启动了整台电脑。还是不行!
    • 你得到同样的错误吗? FWIW,你的代码对我有用。
    猜你喜欢
    • 1970-01-01
    • 2015-11-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-16
    • 1970-01-01
    • 2023-01-23
    • 2020-06-08
    相关资源
    最近更新 更多