小编cbo*_*tig的帖子

了解docker中的用户文件所有权:如何避免更改链接卷的权限

考虑以下简单的Dockerfile:

FROM debian:testing
RUN  adduser --disabled-password --gecos '' docker
RUN  adduser --disabled-password --gecos '' bob 
Run Code Online (Sandbox Code Playgroud)

在一个没有别的工作目录.构建docker镜像:

docker build -t test .
Run Code Online (Sandbox Code Playgroud)

然后在容器上运行bash脚本,将工作目录链接到bob主目录中的新子目录:

docker run --rm -it -v $(pwd):/home/bob/subdir test 
Run Code Online (Sandbox Code Playgroud)

谁拥有subdir容器上的内容?在容器上,运行:

cd /home/bob/subdir
ls -l
Run Code Online (Sandbox Code Playgroud)

广告我们看到:

-rw-rw-r-- 1 docker docker 120 Oct 22 03:47 Dockerfile
Run Code Online (Sandbox Code Playgroud)

圣烟!docker拥有内容!回到容器外的主机上,我们看到我们的原始用户仍然拥有Dockerfile.让我们尝试修复bob主目录的所有权.在容器上,运行:

chown -R bob:bob /home/bob
ls -l 
Run Code Online (Sandbox Code Playgroud)

我们看到:

-rw-rw-r-- 1 bob bob 120 Oct 22 03:47 Dockerfile
Run Code Online (Sandbox Code Playgroud)

可是等等!在容器外面,我们现在运行ls -l

-rw-rw-r-- 1 1001 1001 120 Oct 21 20:47 …
Run Code Online (Sandbox Code Playgroud)

linux permissions rstudio docker

63
推荐指数
3
解决办法
7万
查看次数

ggplot2避免使用传奇符号周围的框

考虑下面的示例图.我想让传说中每个符号周围的小盒子消失.我是怎么做到的?

 ggplot(mtcars, aes(wt, mpg, shape=factor(cyl))) + geom_point() + theme_bw()
Run Code Online (Sandbox Code Playgroud)

r ggplot2

51
推荐指数
1
解决办法
3万
查看次数

在Roxygen中记录时:如何在@details中创建逐项列表?

将逐项列表添加到roxygen2的适当语法是什么,例如,在@details部分?我可以创建一个乳胶列表环境吗?

似乎简单地忽略了换行符,即

#' @details text describing parameter inputs in more detail
#'
#' parameter 1: stuff
#' 
#' parameter 2: stuff
Run Code Online (Sandbox Code Playgroud)

谢谢!

documentation r roxygen

46
推荐指数
2
解决办法
1万
查看次数

Github:如何将我自己的项目添加到"组织"帐户?

我已经开始与github上的几个开发人员合作开展一系列项目,我们最近在github上创建了一个拥有自己的"组织"类型帐户的组织.我看到我可以使用通常的fork菜单将我的协作者的存储库分配到组织帐户,但当然我不能分叉我自己的帐户.

将现有存储库导入组织帐户的预期工作流程是什么?(我认为我可以分叉由其他成员托管的项目,但不是我自己的?)

git collaboration github

23
推荐指数
3
解决办法
2万
查看次数

抑制由"print"显示的消息,而不是R中的"message"或"warning"

我使用的许多R包都涉及通过print()调用命令而不是message()或warning()命令给出所有消息和警告的函数.我希望能够使这些功能进度指示器等静音,但标准的supressWarnings()或supressMessages不会这样做.有没有办法可以抑制打印?

例如:

silly_developer_function <- function(x){
   print("Thanks for using my function!!")
   if(is(x, "numeric"))
     print("warning, x should be a character")
   x
}
Run Code Online (Sandbox Code Playgroud)

我想有一个简单的函数suppressPrint(),我可以包含对此函数的调用,该函数将抑制警告和无用的消息(但仍然打印返回值).

r suppress-warnings

22
推荐指数
1
解决办法
8546
查看次数

21
推荐指数
1
解决办法
3万
查看次数

dplyr总结函数返回是否为向量值?

dplyr::summarize()函数可以对数据应用任意函数,但似乎函数必须返回标量值.我很好奇是否有合理的方法来处理返回向量值的函数而不需要多次调用该函数.

这是一个有点愚蠢的最小例子.考虑一个提供多个值的函数,例如:

f <- function(x,y){
  coef(lm(x ~ y, data.frame(x=x,y=y)))
}
Run Code Online (Sandbox Code Playgroud)

和看起来像这样的数据:

df <- data.frame(group=c('A','A','A','A','B','B','B','B','C','C','C','C'), x=rnorm(12,1,1), y=rnorm(12,1,1))
Run Code Online (Sandbox Code Playgroud)

我想做点什么:

df %>% 
group_by(group) %>%
summarise(f(x,y))
Run Code Online (Sandbox Code Playgroud)

并返回一个表,该表为每个返回值添加了2列,而不是通常的1列.相反,这个错误:Expecting single value

当然,我们可以通过多次dlpyr::summarise()给出函数参数来获取多个值:

f1 <- function(x,y) coef(lm(x ~ y, data.frame(x=x,y=y)))[[1]]
f2 <- function(x,y) coef(lm(x ~ y, data.frame(x=x,y=y)))[[2]]

df %>% 
group_by(group) %>%
summarise(a = f1(x,y), b = f2(x,y))
Run Code Online (Sandbox Code Playgroud)

这给出了所需的输出:

  group         a            b
1     A 1.7957245 -0.339992915
2     B 0.5283379 -0.004325209
3     C 1.0797647 -0.074393457
Run Code Online (Sandbox Code Playgroud)

但以这种方式编码是荒谬粗暴和丑陋的.

data.table 更简洁地处理这个案子:

dt <- as.data.table(df)
dt[, f(x,y), by="group"] …
Run Code Online (Sandbox Code Playgroud)

r dplyr

20
推荐指数
2
解决办法
3348
查看次数

如何向Jekyll博客添加网站搜索功能?

我正在考虑将我的网站从Wordpress迁移到Jekyll,并希望保持对网站进行全文搜索的能力.Wordpress搜索快速,可靠,格式精美,与主题相匹配,我还没有找到合适的替代品.

有一个使用indextank插件解决方案,但我不想通过商业API将我的搜索与用户排名搜索项目联系起来,我只想要与Wordpress搜索相媲美的东西.

我也查看了谷歌Ajax api,但我不想在网站上有一个浮动的ajax搜索框.

总是谷歌搜索该网站,但我没有发现这是可靠的.(自从我几年前搬到wordpress以来,我没有尝试过这个,所以也许我错了).

由于所有帖子都以纯文本形式提供,因此在构建网站时似乎不应该难以创建用于搜索它们的索引,但我还没有找到一个好的解决方案.有什么建议或例子吗?

wordpress search github jekyll

17
推荐指数
2
解决办法
8981
查看次数

ggplot按一个分类变量分组,颜色由第二个变量分组

基本上我想使用ggplot在R中创建下面显示的第一个图,但两个对象在同一个图上(没有构面包装).

考虑一个模仿我的数据结构的最小示例:

library(reshape2)
library(ggplot2)
x <- seq(1, 5, length = 100)
y <- replicate(10, sin(2 * pi * x) + rnorm(100, 0, 0.3), "list")
z <- replicate(10, sin(2 * pi * x) + rnorm(100, 5, 0.3), "list")
y <- melt(y)
z <- melt(z)
df <- data.frame(x = y$Var1, rep = y$Var2, y = y$value, z = z$value)
dat <- melt(df, id = c("x", "rep"))
Run Code Online (Sandbox Code Playgroud)

我可以用它来绘制它

ggplot(dat) + geom_line(aes(x, value, group = rep, color = variable), 
    alpha = 0.3) + facet_wrap(~variable) …
Run Code Online (Sandbox Code Playgroud)

r ggplot2

17
推荐指数
1
解决办法
3万
查看次数

reveal.js print to pdf只打印第一张幻灯片?

我正在尝试使用reveal.js的pdf导出选项,如repo自述文件中所述.

我有以下问题:

  • 我在chrome打印窗口中看不到布局(横向与纵向)的选项
  • 仅打印打印第一张幻灯片

不知道我做错了什么或如何解决它.我在这个示例文件中使用了来自Github的最新版本的reveal.js css等(sha:131c00689a4c7a18e5c991fc8102347e4594b5d4).

我在Ubuntu 14.04上使用Google-chrome版本34.0.1847.132

javascript css google-chrome reveal.js

17
推荐指数
2
解决办法
1万
查看次数