从 GitHub 安装后 R 函数不可用
R functions not available after install from GitHub
我正在尝试创建我的第一个 R 包,基本上遵循 this tutorial
我已经创建了包并将其添加到 Github。
现在我想从 GitHub 和 运行 实际安装它,这是我看到的:
> install_github("nriddiford/cnvPlotteR")
Downloading GitHub repo nriddiford/cnvPlotteR@master
from URL https://api.github.com/repos/nriddiford/cnvPlotteR/zipball/master
Installing cnvPlotteR
'/Library/Frameworks/R.framework/Resources/bin/R' --no-site-file --no-environ --no-save --no-restore --quiet CMD INSTALL \
'/private/var/folders/fb/xk_7jg3s3sj4vc19hbjz92900000gn/T/RtmpN7J2Qt/devtools149042e0f3cd/nriddiford-cnvPlotteR-3f9164e' \
--library='/Library/Frameworks/R.framework/Versions/3.4/Resources/library' --install-tests
* installing *source* package ‘cnvPlotteR’ ...
** R
** data
*** moving datasets to lazyload DB
** preparing package for lazy loading
Warning: Installed Rcpp (0.12.12) different from Rcpp used to build dplyr (0.12.11).
Please reinstall dplyr to avoid random crashes or undefined behavior.
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded
Warning: Installed Rcpp (0.12.12) different from Rcpp used to build dplyr (0.12.11).
Please reinstall dplyr to avoid random crashes or undefined behavior.
* DONE (cnvPlotteR)
我正在使用 RStudio,它通常会在键入加载的函数时自动完成。但是,我看不到任何功能,当我尝试 运行 一个(例如 plot.chrom()
)时,我收到以下错误:
Error in plot.chrom() : could not find function "plot.chrom"
我是不是做错了什么?这与 Please reinstall dplyr to avoid random crashes or undefined behaviour
错误有关吗?如果是这样,我该如何解决?
编辑:
这是我的会话信息 - 它似乎没有正确安装:
> session_info()
Session info -------------------------------------------------------------------------------------------------------------------------------
setting value
version R version 3.4.1 (2017-06-30)
system x86_64, darwin15.6.0
ui RStudio (1.0.143)
language (EN)
collate en_GB.UTF-8
tz XXX
date 2017-07-20
Packages -----------------------------------------------------------------------------------------------------------------------------------
package * version date source
assertthat 0.2.0 2017-04-11 CRAN (R 3.4.0)
backports 1.1.0 2017-05-22 CRAN (R 3.4.0)
base * 3.4.1 2017-07-07 local
commonmark 1.2 2017-03-01 cran (@1.2)
compiler 3.4.1 2017-07-07 local
crayon 1.3.2 2016-06-28 cran (@1.3.2)
curl 2.7 2017-06-26 CRAN (R 3.4.1)
datasets * 3.4.1 2017-07-07 local
desc 1.1.0 2017-01-27 cran (@1.1.0)
devtools * 1.13.2 2017-06-02 CRAN (R 3.4.0)
digest 0.6.12 2017-01-27 CRAN (R 3.4.0)
git2r 0.18.0 2017-01-01 CRAN (R 3.4.0)
graphics * 3.4.1 2017-07-07 local
grDevices * 3.4.1 2017-07-07 local
httr 1.2.1 2016-07-03 CRAN (R 3.4.0)
magrittr 1.5 2014-11-22 CRAN (R 3.4.0)
memoise 1.1.0 2017-04-21 CRAN (R 3.4.0)
methods * 3.4.1 2017-07-07 local
R6 2.2.2 2017-06-17 CRAN (R 3.4.0)
Rcpp 0.12.12 2017-07-15 CRAN (R 3.4.1)
roxygen2 6.0.1.9000 2017-07-19 Github (klutometis/roxygen@14eae41)
rprojroot 1.2 2017-01-16 cran (@1.2)
rstudioapi 0.6 2016-06-27 CRAN (R 3.4.0)
stats * 3.4.1 2017-07-07 local
stringi 1.1.5 2017-04-07 CRAN (R 3.4.0)
stringr 1.2.0 2017-02-18 CRAN (R 3.4.0)
tools 3.4.1 2017-07-07 local
utils * 3.4.1 2017-07-07 local
withr 1.0.2 2016-06-20 CRAN (R 3.4.0)
xml2 1.1.1 2017-01-24 cran (@1.1.1)
我推荐 Hadley 的 Advanced R and R Packages 阅读更多与编程和包相关的各种 R 主题。那里有很多好的信息和答案。
编辑: 关于您的编辑和查看 github
- 您尝试使用的功能尚未导出。您正确地将 @export
标签放在您的文档中,但您没有重新生成 NAMESPACE
文件 (c.f.):
# Generated by roxygen2: do not edit by hand
S3method(plot,all.grid)
S3method(plot,chrom)
S3method(plot,region)
export(clean_theme)
export(file.cleanR)
import(dplyr)
import(ggplot2)
import(scales)
import(RColorBrewer)
EDIT2: 未导出的函数都包含 .
(例如 plot.all.grid
)并且 roxygen 正在期待 S3 方法,因为 .
,所以您遇到了一个常见的命名约定禁忌。请参阅 OO 或命名约定。如果您需要包含 .
,@method
标签或 roxygen 中的其他标签可能有助于消除歧义
解决方案 = 重命名函数以排除 .
,例如将 plot.all.grid
更改为 plotAllGrid
我正在尝试创建我的第一个 R 包,基本上遵循 this tutorial
我已经创建了包并将其添加到 Github。
现在我想从 GitHub 和 运行 实际安装它,这是我看到的:
> install_github("nriddiford/cnvPlotteR")
Downloading GitHub repo nriddiford/cnvPlotteR@master
from URL https://api.github.com/repos/nriddiford/cnvPlotteR/zipball/master
Installing cnvPlotteR
'/Library/Frameworks/R.framework/Resources/bin/R' --no-site-file --no-environ --no-save --no-restore --quiet CMD INSTALL \
'/private/var/folders/fb/xk_7jg3s3sj4vc19hbjz92900000gn/T/RtmpN7J2Qt/devtools149042e0f3cd/nriddiford-cnvPlotteR-3f9164e' \
--library='/Library/Frameworks/R.framework/Versions/3.4/Resources/library' --install-tests
* installing *source* package ‘cnvPlotteR’ ...
** R
** data
*** moving datasets to lazyload DB
** preparing package for lazy loading
Warning: Installed Rcpp (0.12.12) different from Rcpp used to build dplyr (0.12.11).
Please reinstall dplyr to avoid random crashes or undefined behavior.
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded
Warning: Installed Rcpp (0.12.12) different from Rcpp used to build dplyr (0.12.11).
Please reinstall dplyr to avoid random crashes or undefined behavior.
* DONE (cnvPlotteR)
我正在使用 RStudio,它通常会在键入加载的函数时自动完成。但是,我看不到任何功能,当我尝试 运行 一个(例如 plot.chrom()
)时,我收到以下错误:
Error in plot.chrom() : could not find function "plot.chrom"
我是不是做错了什么?这与 Please reinstall dplyr to avoid random crashes or undefined behaviour
错误有关吗?如果是这样,我该如何解决?
编辑:
这是我的会话信息 - 它似乎没有正确安装:
> session_info()
Session info -------------------------------------------------------------------------------------------------------------------------------
setting value
version R version 3.4.1 (2017-06-30)
system x86_64, darwin15.6.0
ui RStudio (1.0.143)
language (EN)
collate en_GB.UTF-8
tz XXX
date 2017-07-20
Packages -----------------------------------------------------------------------------------------------------------------------------------
package * version date source
assertthat 0.2.0 2017-04-11 CRAN (R 3.4.0)
backports 1.1.0 2017-05-22 CRAN (R 3.4.0)
base * 3.4.1 2017-07-07 local
commonmark 1.2 2017-03-01 cran (@1.2)
compiler 3.4.1 2017-07-07 local
crayon 1.3.2 2016-06-28 cran (@1.3.2)
curl 2.7 2017-06-26 CRAN (R 3.4.1)
datasets * 3.4.1 2017-07-07 local
desc 1.1.0 2017-01-27 cran (@1.1.0)
devtools * 1.13.2 2017-06-02 CRAN (R 3.4.0)
digest 0.6.12 2017-01-27 CRAN (R 3.4.0)
git2r 0.18.0 2017-01-01 CRAN (R 3.4.0)
graphics * 3.4.1 2017-07-07 local
grDevices * 3.4.1 2017-07-07 local
httr 1.2.1 2016-07-03 CRAN (R 3.4.0)
magrittr 1.5 2014-11-22 CRAN (R 3.4.0)
memoise 1.1.0 2017-04-21 CRAN (R 3.4.0)
methods * 3.4.1 2017-07-07 local
R6 2.2.2 2017-06-17 CRAN (R 3.4.0)
Rcpp 0.12.12 2017-07-15 CRAN (R 3.4.1)
roxygen2 6.0.1.9000 2017-07-19 Github (klutometis/roxygen@14eae41)
rprojroot 1.2 2017-01-16 cran (@1.2)
rstudioapi 0.6 2016-06-27 CRAN (R 3.4.0)
stats * 3.4.1 2017-07-07 local
stringi 1.1.5 2017-04-07 CRAN (R 3.4.0)
stringr 1.2.0 2017-02-18 CRAN (R 3.4.0)
tools 3.4.1 2017-07-07 local
utils * 3.4.1 2017-07-07 local
withr 1.0.2 2016-06-20 CRAN (R 3.4.0)
xml2 1.1.1 2017-01-24 cran (@1.1.1)
我推荐 Hadley 的 Advanced R and R Packages 阅读更多与编程和包相关的各种 R 主题。那里有很多好的信息和答案。
编辑: 关于您的编辑和查看 github
- 您尝试使用的功能尚未导出。您正确地将 @export
标签放在您的文档中,但您没有重新生成 NAMESPACE
文件 (c.f.):
# Generated by roxygen2: do not edit by hand
S3method(plot,all.grid)
S3method(plot,chrom)
S3method(plot,region)
export(clean_theme)
export(file.cleanR)
import(dplyr)
import(ggplot2)
import(scales)
import(RColorBrewer)
EDIT2: 未导出的函数都包含 .
(例如 plot.all.grid
)并且 roxygen 正在期待 S3 方法,因为 .
,所以您遇到了一个常见的命名约定禁忌。请参阅 OO 或命名约定。如果您需要包含 .
@method
标签或 roxygen 中的其他标签可能有助于消除歧义
解决方案 = 重命名函数以排除 .
,例如将 plot.all.grid
更改为 plotAllGrid