RMarkdown:当 collectcode=TRUE 时,Statamarkdown 会产生不需要的输出

RMarkdown: Statamarkdown produces undesired output when collectcode=TRUE

我正在使用 Statamarkdown 使用 RMarkdown 和 Stata 生成 HTML 文档。

如文档所述here,每个代码块都作为单独的 Stata 会话执行。 collectcode=TRUE 是跨块收集 Stata 代码的块选项。

虽然这很好地工作,但第一个 collectcode=TRUE 之后的第二个(以及任何其他)块的输出在顶部包含不需要的回声:

Running .......\profile.do

例如,当 运行 第二个块 {stata stata2, echo = T,collectcode=TRUE}

   reg mpg price i.foreign ,  noheader  

产生这个输出:

reg mpg price i.foreign ,  noheader  
Running C:\Cloud\Methods\prog\profile.do . reg mpg price i.foreign ,  noheader  
------------------------------------------------------------------------------
         mpg |      Coef.   Std. Err.      t    P>|t|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
       price |   -.000959   .0001815    -5.28   0.000     -.001321    -.000597
             |
     foreign |
    Foreign  |   5.245271   1.163592     4.51   0.000     2.925135    7.565407
       _cons |   25.65058   1.271581    20.17   0.000     23.11512    28.18605
------------------------------------------------------------------------------

这是我的 RMarkdown 重复表达式:

---
title: "Statamarkdown output problem"
output: html_document
---

```{r setup, include = F}
library(Statamarkdown)
```


First chunk is clean:

```{stata stata1,collectcode=TRUE}
sysuse auto
su mpg price
```

Second Stata Output contains undesired `Running .......\profile.do` output:

```{stata stata2, echo = T,collectcode=TRUE}
reg mpg price i.foreign ,  noheader  
```

Problem persists even in chunks with `collectcode=FALSE`:

```{stata new_data, echo = T,collectcode=F}
webuse bpwide, clear
su sex agegrp
```

`cleanlog = F` does not do the trick:
```{stata new_data2, echo = T,collectcode=F, cleanlog = FALSE}
webuse bpwide, clear
su sex agegrp
```

完全避免 collectcode=T,即为每个块加载和准备数据当然是一种解决方法,但非常乏味。

我在 Windows 机器上使用 R 3.6.3 和 Stata 16.1。

非常感谢任何想法!

原来是 Stata 改自

running .......\profile.do

Running .......\profile.do

Statamarkdown 软件包的新版本 (0.5.0) 现在支持这一点。