2016-12-29 26 views
2

當我能夠從控制檯SWSamp包裝精美運行下面的示例腳本,但針織PDF文件時,我得到一個「isIncomplete(CON)」的錯誤。這個軟件包需要使用至少2個內核,我想知道這個連接錯誤是否與嘗試並行運行有關。isIncomplete(CON)錯誤針織PDF

--- 
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 
``` 

在isIncomplete(CON)從行退出16-28(test.Rmd)錯誤: 無效連接呼叫:... evaluate_call - > handle_output - > - > isIncomplete從行退出16-(test.Rmd)isOpen(con)中的錯誤:無效連接調用: ... in_dir - > evaluate - > evaluate_call - > - > isOpen錯誤close.connection(con):無效連接調用: - > - >關閉 - > 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

[本SO回答](http://stackoverflow.com/questions/11162824/how-do-i-use-the-ggmap-librarys-get-map-function-inside-of-knitr)給出一些提示關於不同的包可能關閉連接的可能方式,但'evaluate()'解決方案對我不起作用。 –

+0

'sim.power'函數確實使用''closeAllConnections()'函數,這可能會干擾knitr。 –

+0

我的臨時解決方案是用'closeAllConnections()'調用註釋掉''sim.power()'函數。我不知道這是否有不利影響,但似乎爲我運行。更好的方法? –

回答

2

sim.power()函數運行closeAllConnections(),其與干涉knitr本SO answer。這個答案的解決方案是用引號和evaluate()函數包裝表達式,但它對我無效。

作爲臨時解決方案,我重新定義了sim.power()函數,closeAllConnections()函數被註釋掉了。我不知道這是否有不利影響,但似乎爲我運行。樂於接受更好的答案。