问题标签 [reproducible-research]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
34 浏览

r - 用于工具包文档的 docker:`docker export` 不包括所有层?

在放弃了其他方法来正确记录我的R分析环境以实现分析再现性之后,我开始着手将每个单独的分析包装到一个docker容器中。这是我所做的:

  1. 从项目中拉出最新的rstudio容器:rocker

    /li>
  2. 创建项目特定的副本

    /li>
  3. 启动容器:

    /li>
  4. R( Studio)- 基于项目分析...以sudo apt-get clean和结尾sudo rm -rf /tmp/*

  5. 导出 docker 镜像:

    /li>

从我的本地注册表中删除所有相关容器/图像后,我尝试模拟对打包项目的重新访问,如下所示:

  1. 导入容器:

    /li>
  2. (尝试)像原始容器一样启动容器:

    docker run -d -p 8787:8787 -e ROOT=TRUE rstudio_project.2018.2

然后我面临以下错误:

我究竟做错了什么?容器在哪里丢失(什么)关于默认启动什么的信息?

0 投票
1 回答
1224 浏览

r - 与 rmarkdown html 文档共享数据的首选方式?

我创建了一个 rmarkdown html 文档来共享 R 中分析的代码。我也想包含数据,但我不确定提供数据的最方便的方式(对于接收者)。我可以将 CSV 作为 URI 数据方案嵌入,如下所示:

或者提供一个范围从原始到花哨的 HTML 表格:

我相信还有其他选择。假设数据集与 datasets::iris 具有相似的维度,我如何共享一个数据集:

- 可从大多数平台/软件访问
- 可轻松读入 R
- 可与包含代码的 rmarkdown 文档打包,即要共享的单个文件
- 是最小的文件大小

如果数据集的维度大 100 倍怎么办?

0 投票
1 回答
514 浏览

r - 如果横向太长,Bookdown数字标题会失败?

我有一个足够大的图,需要在 RStudio 中使用(PDF)bookdown 绘制肖像文档中的风景。该图有很多内容,因此图标题很长,我无法进一步减少文字。

这是我一直在使用的示例代码:

问题是这会输出一个风景图,但标题在 PDF 输出中呈现为正文文本(即不是作为图形标题):

\begin{figure} \caption{QTL 每个生殖植物的果实数 (Fruits/RP)、每个果实的种子数 (Seeds/fr)、每个生殖植物的种子数 (Seeds/RP)、种子质量 (Sd mass) 和存活率(生存)。箭头表示具有 95% 贝叶斯可信区间的最可能的 QTL 位置,以及瑞典基因型(向上:增加的表型;向下:减少的表型)在意大利(红色)和瑞典(蓝色)的影响。空心箭头显示可信区间 >15.2cM 的 QTL。染色体右侧的标签表示对生殖力 (c)、生殖力和存活率 (s) 以及生殖力和种子质量 (m) 的成分具有多效性影响的 QTL。灰色框表示跨站点年组合的单个性状的共定位 QTL 范围。} \end{figure}

如果我不使用横向(即省略out.extra='angle=90'),则此方法有效。如果我采用较短的标题块,它也会正确呈现。这有效,例如:

什么时候字幕长度有上限out.extra='angle=90'

任何人都可以为此建议解决方法吗?

0 投票
7 回答
22922 浏览

python - 使用 tf.set_random_seed 在 Tensorflow 中重现结果

我正在尝试生成 N 组独立随机数。我有一个简单的代码,显示了 3 组 10 个随机数的问题。我注意到即使我使用tf.set_random_seed设置种子,不同运行的结果看起来也不一样。非常感谢任何帮助或评论。

这是代码的输出:

我想要类似的东西

更新 1:确实,我将种子初始化程序放在 for 循环中的原因是因为我想以不同的方式设置它们(例如,将其视为不同的 MCMC 运行)。这是我完成这项工作的代码,但我不确定它是否有效。基本上我会在 0 到 2^32-1 之间生成几个随机种子,并在每次运行中更改种子。非常感谢任何有助于提高内存/RAM 效率的帮助或评论。

0 投票
2 回答
912 浏览

r - mlr:为什么使用并行化的超参数调整的再现性会失败?

我在备忘单中使用基于 Quickstart 示例的mlr 代码。我添加了并行化并尝试多次调整参数。

问题:即使我set.seed()在调整之前每次都设置了,为什么重现性会失败(为什么结果不一样)?我的代码中缺少什么?我应该如何修改代码以实现可重现性?

代码(在我的电脑上最多运行 1 分钟):

结果不相同:

我也试过

代替

这并没有导致可重复性。

但是当并行化关闭时,结果是相同的set.seed(123456, "L'Ecuyer-CMRG")(除了开始/结束时间和持续时间)。

0 投票
1 回答
123 浏览

r - 进行可重复的研究

Make 可以方便地使具有依赖性的研究和数据分析更具可重复性,例如:

从源数据重新生成图形,将所有输出保存到./output. 但是我们可以让事情变得更紧凑吗?例如,通过

  1. 避免重复,例如:

    /li>
  2. 重新组织以更通用地关联代码(本例中为 R 脚本)数据(csv)和输出(pdf、Rout)?

  3. 更好地处理输出到./output目录的导出?

0 投票
1 回答
144 浏览

python-3.x - 使用 Keras 的机器学习项目中常见的随机性来源是什么?

可重复性很重要。在我目前正在研究的一个闭源机器学习项目中,很难实现它。要看哪些部位?

0 投票
0 回答
233 浏览

python - 如何使用 Keras model.fit 记录训练样本的 ID?

尽管我设置了种子,但我目前有可重复性问题。我知道模型的初始化方式相同(通过检查model.save("initial.h5")withh5dump和 meld 进行检查)。

接下来我要检查训练样本是否以相同的顺序使用。因此,我想记录它们。

我通过训练

我也可以加dataset['train']['id']。我想获得一个包含正在使用的 ID 列表的 txt 文件,例如,对于 32 的批量大小、765 的训练数据集长度和 5 个 epoch,我希望 txt 文件中有 765 * 5 = 3825 行,其中每个ID 大概出现了 5 次,前 32 个元素是第一批的 ID。

那可能吗?

0 投票
2 回答
4733 浏览

r - R中的colorBin()传单没有按预期工作

我有data.frame两 (2) 行。我正在尝试使用以下colorBin函数将这些数据与颜色映射leaflet

即使城市有不同的垃圾箱带颜色箱的图像

我总是在地图上得到错误的颜色。形状文件很好,我从美国人口普查局下载了它,不明白为什么我的垃圾箱没有正确地进行颜色映射。

如果我需要上传我的 dsch_count_by_city 和 dsch_count_shp 作为文件,我可以尝试这样做

0 投票
1 回答
775 浏览

r - 在 knitr::kable() 中设置自适应 col.names

请考虑以下事项。我开始使用 R markdown 编写可重现的文档,并希望得到一些报告的输出。由于我正在使用多个,data.frame并且它们的列名不是很丰富或漂亮,我想col.names使用knitr::kable().


问题:由于data.frame它相当大并且我只想在整个报告中显示特定的列,我希望新的列名根据我选择的列自动出现。

我可以手动执行此操作,如下例所示:

但是,当我将其减少data.frame为仅显示某些列时,我必须col.names再次手动设置(此处删除col.names我不再需要的)以不收到错误消息:


问题:有没有办法克服这个问题,例如switch只使用和指定一次"Sepal.Length" = "Sepal length"等?这还应该考虑到我创建的任何新列,例如通过dplyr::mutate()保持新添加的列名原样或在文档开头指定它而不在每次该列不(尚)存在时返回错误.