我可以在控制台中从SWSamp
包中运行以下示例脚本,但是我得到了一个" isIncomplete(con)"编织为PDF时出错。这个软件包需要使用至少2个核心,我想知道这个连接错误是否与尝试并行运行有关。
---
title: "Test"
output: pdf_document
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)
```
```{r}
install.packages("http://www.statistica.it/gianluca/SWSamp/SWSamp_0.3.tar.gz", type="source", dependencies=TRUE, repos=NULL)
library(SWSamp)
```
```{r}
mu1=0.3
b.trt=-0.3875
sigma.e=1.55
J=5
K=20
sig.level=0.05
n.sims=10
rho=0.5
pow.cont <- sim.power(I=14, J=J, H=NULL, K=K, rho=rho, mu=mu1, sigma.e=sigma.e,
b.trt=b.trt, formula=NULL, n.sims=n.sims,
sig.level=sig.level, n.cores=2)
pow.cont$power
```
退出第16-28行(test.Rmd)isIncomplete(con)中的错误: 无效连接呼叫:... evaluate_call - &gt; handle_output - &gt; - &GT;是完全从第16-28行退出 (test.Rmd)isOpen(con)中的错误:无效的连接调用: ... in_dir - &gt;评估 - &gt; evaluate_call - &gt; - &GT; close.connection(con)中的isOpen错误:无效的连接调用: - &GT; - &GT;关闭 - &gt; close.connection执行 停止
> sessionInfo()
R version 3.3.2 (2016-10-31)
Platform: x86_64-apple-darwin13.4.0 (64-bit)
Running under: macOS Sierra 10.12.1
locale:
[1] en_US.UTF-8/en_US.UTF-8/en_US.UTF-8/C/en_US.UTF-8/en_US.UTF-8
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] SWSamp_0.3 lme4_1.1-12 Matrix_1.2-7.1
loaded via a namespace (and not attached):
[1] Rcpp_0.12.8 knitr_1.15.1 magrittr_1.5 splines_3.3.2 MASS_7.3-45
[6] doParallel_1.0.10 lattice_0.20-34 foreach_1.4.3 minqa_1.2.4 stringr_1.1.0
[11] tools_3.3.2 parallel_3.3.2 grid_3.3.2 nlme_3.1-128 htmltools_0.3.5
[16] iterators_1.0.8 yaml_2.1.14 rprojroot_1.1 digest_0.6.10 nloptr_1.0.4
[21] codetools_0.2-15 evaluate_0.10 rmarkdown_1.3 stringi_1.1.2 compiler_3.3.2
[26] backports_1.0.4
答案 0 :(得分:2)
sim.power()
函数运行closeAllConnections()
,根据此SO answer干扰knitr。这个答案中的解决方案是用引号和evaluate()
函数包装表达式,但它对我不起作用。
作为临时解决方案,我重新定义了sim.power()
函数,其中closeAllConnections()
调用已注释掉。我不知道这是否有不良影响,但似乎适合我。很高兴接受更好的答案。