我的机构最近为我们安装了GitLab.我已经想出如何使用GitLab服务器安装R软件包,devtools::install_git只要项目是公共的,它就可以工作.
#* When modeltable project has Public status
devtools::install_git('https://mini-me2.lerner.ccf.org/nutterb/modeltable.git')
Run Code Online (Sandbox Code Playgroud)
但是,如果我有一个列为"内部"或"私有"的软件包,我无法在没有某种形式的身份验证的情况下安装软件包.到目前为止,我还没有想出如何通过URL传递身份验证.有没有人有从GitLab下载包的经验?
#* After changing the 'modeltable' project to Private status
devtools::install_git('https://mini-me2.lerner.ccf.org/nutterb/modeltable.git')
Preparing installation of modeltable using the Git-URL: https://mini-me2.lerner.ccf.org/nutterb/modeltable.git
'/usr/bin/git'clone --depth 1 --no-hardlinks https://mini-me2.lerner.ccf.org/nutterb/modeltable.git /tmp/Rtmp5aj1cU/file24493dc03a32
Error: There seems to be a problem retrieving this Git-URL.
Run Code Online (Sandbox Code Playgroud) 在升级到R-2.14之前,我想借此机会合理化已安装软件包的文件夹结构.
目前我使用R默认值,即所有新安装的软件包都转到R_LIBS_USER.但是,我真的区分了两类包:
plyr,data.table等等.由于install.packages提供了一个指定lib参数的选项,这显然是可能的.
是否有一种简单的方法来管理包位置,例如通过在.RProfile或中创建一些合理的设置/包装函数RProfile.Site?
有没有办法让ggplot将传奇放在顶部但在标题下面?
举个例子...

..使用以下代码生成:
carrots<-list(Yield=c(345,226,74,559,288,194),
Field=c("A","B","C","D","E","F"),
Breed=rep(c("Long","Short"),each=3))
carrots<-data.frame(carrots)
ggplot(carrots,aes(y=Yield,x=Field,fill=Breed)) +
geom_bar() +
opts(title="Title",
legend.direction = "horizontal",
legend.position = "top") +
labs(fill="")
Run Code Online (Sandbox Code Playgroud)
任何建议将不胜感激?
从RStudio内部我试图按照这些说明从github安装data.table包,并且包似乎下载没有问题:
> library(devtools)
> dev_mode(on=T)
Dev mode: ON
d> install_github("Rdatatable/data.table")
Downloading GitHub repo Rdatatable/data.table@master
from URL https://api.github.com/repos/Rdatatable/data.table/zipball/master
Run Code Online (Sandbox Code Playgroud)
然后我收到以下提示:
从源代码构建R包需要安装其他构建工具.您想立即安装其他工具吗?
选择"是"会导致出现此错误消息:
Error: Could not find build tools necessary to build data.table
Run Code Online (Sandbox Code Playgroud)
考虑到这可能是一个RStudio问题,我尝试在标准R控制台中安装软件包,但这也导致了一个错误:
Downloading GitHub repo Rdatatable/data.table@master
from URL https://api.github.com/repos/Rdatatable/data.table/zipball/master
Installing data.table
"C:/PROGRA~1/R/R-33~1.0/bin/x64/R" --no-site-file --no-environ --no-save \
--no-restore --quiet CMD INSTALL \
"C:/Users/Robert/AppData/Local/Temp/RtmpOOKOKu/devtools246832c52ab/Rdatatable-data.table-4348ff4" \
--library="C:/Users/Robert/Documents/R-dev" --install-tests
* installing *source* package 'data.table' ...
** libs
c:/Rtools/mingw_64/bin/gcc -I"C:/PROGRA~1/R/R-33~1.0/include" -DNDEBUG -I"d:/Compiler/gcc-4.9.3/local330/include" -fopenmp -O2 -Wall -std=gnu99 -mtune=core2 -c assign.c -o assign.o
c:/Rtools/mingw_64/bin/gcc: not found …Run Code Online (Sandbox Code Playgroud) 有时 GNU R 有一个问题,Hadley Wickham建议:
我建议您重新安装所有软件包。
问题是如何以最好的方式做到这一点。我知道install.packages或update.packages将升级所有软件包版本并覆盖现有版本:
update.packages(checkBuilt = TRUE, ask = FALSE)
Run Code Online (Sandbox Code Playgroud)
使用 CRAN 包时(GitHub 或其他来源没有什么特别之处),这种天真的方法对我有用:
my.packages <- rownames(installed.packages());
install.packages(my.packages);
Run Code Online (Sandbox Code Playgroud)
例如,如果我从 GitHub 安装了开发版本,或者使用了一些未公开共享的本地包,我该怎么办?
我正在寻找的是一种方法:
我该如何满足这些要求?
我正在尝试添加多个验证并将公式添加到 Excel 文件。这是我使用的代码:
library(openxlsx)
fileTemplate <- 'New01.xlsx'
wbTemplate <- loadWorkbook(fileTemplate)
addWorksheet(wbTemplate, "Sheet1")
writeData(wbTemplate, "Sheet1", dataset)
len <- NROW(dataset)
dataValidation(wbTemplate, 2, col = 2, rows = 2:len, type = "list", value = "'Data Validation'!$A$2:$A$19")
dataValidation(wbTemplate, 2, col = 3, rows = 2:len, type = "list", value = "'Data Validation'!$B$2:$B$501")
dataValidation(wbTemplate, 2, col = 5, rows = 2:len, type = "list", value = "'Data Validation'!$C$2:$C$6")
openXL(wbTemplate)
Run Code Online (Sandbox Code Playgroud)
如果我只使用一个 dataValidation,它会打开,如果不止一个,它会抱怨文件已损坏......
安装ggplot2的开发版是否会覆盖常规版本?我需要一个特定包的开发版本,但我不想搞砸我的东西.我可以卸载开发或者只是重新安装常规版本,然后将覆盖开发版本.我用Google搜索,一无所获.谢谢