问题标签 [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.
python - 随机数的再现性(Python 2/random)
在函数的 Python 2 文档中,random.seed()
我发现了一个警告:
如果给出了可散列对象,则只有在禁用 PYTHONHASHSEED 时才能确保确定性结果。
从https://docs.python.org/2/using/cmdline.html#envvar-PYTHONHASHSEED我推断-R
解释器的开关可能具有与PYTHONHASHSEED
.
我已经根据经验验证,以小整数为种子的随机数似乎是可重现的。小整数的哈希也是如此。
但是,int
是可散列的。是否在任何受信任的来源中明确指出,将其用作可重现的随机数序列的种子是安全的?
与跨系统和版本的 python 伪随机数的再现性相反?,在同一系统和解释器内的可重复性就足够了。
r - Loops in Rmarkdown: How to make an in-text figure reference? Figure captions?
{r setup, include=FALSE, message=FALSE, results="hide"}
knitr::opts_chunk$set(echo = TRUE)
library(knitr)
library(kfigr)
library(dplyr)
library(png)
library(grid)
library(pander)
library(ggplot2)
Question
Loops in rmarkdown: in-text figure reference? figure captions?
Goal
Use a for loop to create sections with text, in-text results, and multiple figure references with associated figure captions in the figure list. The figure references/numbering should be seemless with figures numbered before and after these new sections.
Note: The figures referenced in the for loop are generated earlier in the text, saved as pngs, and then re-loaded. This might seem clunky for the purpose of this example, but the actual figs are maps and are slow to generate (I plan to comment out the loop that generates the figures once I have them how I want).
Data: Each year we have a different number of strata, hence the need for a loop.
first_plot: the figure that should appear in the list before for loop creates the sections by strata
last_plot: the figure that should appear in the list after the for loop creates the sections by strata
Figure generation (this is the part that will be commented out later in my version once I have the maps how I want)
Load the png's
Introduction section
Some introductory text in the report and a figure r figr('first_plot',TRUE, type='Figure')
.
Conclusion section
Some discussion text in the report and figure r figr('last_plot',TRUE, type='Figure')
.
Figures
r - 如何使用 Hmisc::latex()
Hmisc::latex() 似乎忽略了我给它的所有论点,除了object
. 很难指出我需要回答的具体问题,除了——“我怎样才能让 Hmisc::latex()”识别其文档所说的论点?
例如,这两个命令产生相同的输出:
我从这两个命令中得到的输出是:
我在 R 3.2.2 上使用 Hmisc 4.0-2 和表 0.8。
编辑:caption
andcaption.loc
参数似乎也被忽略了。但是如果我在运行booktabs()
之前运行latex()
,那确实会生效(更改表格的格式)。
node.js - 可重复的基准测试是否可行?
我需要测试一些节点框架,或者至少是它们的路由部分。这意味着从请求到达节点进程进行处理,直到确定路由并调用具有业务逻辑的函数/类,例如在调用它之前。我一直在努力寻找合适的方法,但得出的结论是必须直接在代码中完成,而不是使用外部基准测试工具。我担心测量错误的属性。我尝试了炮兵和 ab,但它们测量的属性比我想测量的要多得多,比如 RTT、糟糕的操作系统调度、在操作系统中执行的随机任务等等。我使用 process.hrtime() 对我的自定义路由代码进行的初始基准测试显示大约。0.220 毫秒(220 微秒)执行时间,但外部测量显示 0.700(700 微秒),这是不可接受的差异,因为它是 3。18 倍额外时间。由于 GC 或系统任务,有时执行时间会跳到 1.x 秒。现在我想知道可重复的方法会是什么样子?也许是这样的:
- 将 Docker 与 Scientific Linux 结合使用以获得某种程度可控的环境。
- 一个最小的 docker 容器安装,仅支持节点的容器,没有额外的。
- 将时间结果存储在全局范围内,直到测试完成,然后保存到磁盘。
- 终止主机操作系统上具有高/中等磁盘IO和/或CPU的所有应用程序。
- 如前所述测量时间并交叉手指。
还有其他建议要考虑吗?
docker - 使用 docker 的数据卷图像
我对可重复的数据科学工作非常感兴趣。为此,我现在正在探索将 Docker 作为一个能够捆绑代码、数据和环境设置的平台。我的第一个简单尝试是包含所需数据的 Docker 映像(链接)。
然而,这只是第一步,在这个例子中,数据是图像的一部分,因此当图像加载到容器中时,数据已经存在。我的下一个目标是解耦分析代码和数据。据我了解,这意味着有两个容器,一个带有代码(code
),一个带有数据(data
)。
对于code
我使用一个简单的Dockerfile
:
对于data
:
data.csv
我要复制到图像的数据文件在哪里。
构建这两个图像后,我可以按照此解决方案中的描述运行它们:
启动网络后:docker network create data-testing
在这些步骤之后,我可以从另一个容器 ping 一个容器,并且可能还可以data.csv
从code
. 但我有这种感觉,这是一个次优的解决方案,不能被认为是好的做法。
拥有可以访问数据的容器被认为是一种好的做法?我阅读了一些关于数据量的信息,但我不明白如何使用它们以及如何将它们转换为图像。
r - 将 apaTables 或 apaStyles 包与 knitr 一起使用
问题
社会科学家使用APA 样式格式化表格和文档。有像stargazer
and这样的包xtable
(这里有一个扩展列表),它们为使用latex
and的人提供干净的表格格式knitr
。但是,这些包并非在所有情况下都符合 APA 样式规则。
从头开始构建和格式化表格非常耗时。幸运的是,有两个 R 包用于创建符合 APA 样式指南的表格和文档:apaStyle
和apaTables
. 不幸的是,这两个包都只输出到 MS Word。
问题
- 有没有办法使用
APAStyle
,APATables
以便将输出集成到 .Rmd 文件的 HTML 或 PDF 输出中? - 您还使用哪些其他软件包在 .Rmd 文件中创建 APA 样式表,尤其是在
knitr
用于创建 PDF 文件时。
r - 封闭网络上的 RStudio 和 git 工作流
有人知道基于 R 的数据分析设置在没有互联网访问的研究数据中心中运行良好吗?我想使用良好的可重复分析实践,但我没有权限将文件上传到存储库,例如。此外,不会保存 RStudio 首选项(例如本地包存储库的路径)。到目前为止我知道:
miniCRAN包有助于收集所有 R 包依赖项。
本地
git
版本控制不需要互联网访问。(另外,如果从长远来看节省的时间超过了学习曲线,数据中心技术人员可能愿意使用它来发布结果和 R 脚本。)
我正在考虑为一个试点项目写一份提案,但我不想重新发明轮子——尤其是如果已经存在一个更全面的平台的话。我看过,但没有找到,除非微软的 R Open基本上做到了(我不清楚)。
感谢您的考虑!
python - Scrapy:如何在不重新下载html的情况下重现结果?
使用 Scrapy 将 HTML 下载到我的硬盘(例如,使用带有 field 的内置 Item ExportersHTML
或将所有 HTML 文件存储到一个文件夹)后,我如何使用 Scrapy 再次从我的硬盘读取数据并执行下一步管道?有类似物品进口商的东西吗?
r - 使用 knit_expand() 从模板中提取 R 代码
我使用knitr
. 该文档广泛使用了包的knit_expand()
模板功能。MWE 说明了这一点(基于 Yihui Xie 自己
的函数示例)。
主要文件
/li>knit-expand-MWE.Rnw
/li>template.Rnw
主文档调用的模板
我现在需要提取相应的 R 代码。运行purl("knit-expand-MWE.Rnw")
输出knit-expand-MWE.R
,其中包括块中的代码以及对模板的引用:
我想要的是相应的“扩展”代码(为了不使用的同事的利益knitr
),例如:
我怎样才能做到这一点?
r - rmarkdown 中未编号的特殊标头
我正在用 Rmarkdown 写我的论文(我会将它导出为 PDF)。
我的第三章应该包括三个未编号的部分(或某种特殊的标题),因为它在主题上是有意义的。有什么方法可以包含它们但不是常规标题?因为如果在 TOC 中深度的限制是 3,我会丢失重要的子标题。