通过在脚本中指定以下内容,可以在Rstudio中使用markdown生成Stata输出:
```{r}
statapath <- "C:/Program Files (x86)/Stata13/StataSE-64.exe"
opts_chunk$set(engine="stata", engine.path=statapath, comment="")
```
之后,可以使用Stata语法生成输出。
是否可以为某些代码块切换回R,然后再切换回Stata?
原因是我使用Stata进行回归(表格),但是对于我做的其他大部分事情都使用R.所以像这样的功能对我来说会派上用场。
我试过了:
```{r}
rpath <- "C:/Program Files/RStudio/bin/rstudio.exe"
opts_chunk$set(engine="R", engine.path=rpath, comment="")
```
它不起作用。
答案 0 :(得分:7)
我非常怀疑目前这是可能的。
我最近不得不使用Stata进行一些分析,并通过使用带有参数并使用system()
调用它来运行脚本的Do文件来实现。脚本本身生成回归模型的结果(确切地说是xtnbreg
),然后使用do文件中的parmest
将这些结果整理到一个文件中(保存为Stata文件)。然后将带有parmest
输出的结果Stata文件读入R并使用R的本机标记渲染进行打印。
除非你想深入研究为RMarkdown / Pandoc添加功能,否则我建议考虑这个。
答案 1 :(得分:1)
您可能对此很感兴趣
Stata和R Markdown(Windows)https://www.ssc.wisc.edu/~hemken/Stataworkshops/Stata%20and%20R%20Markdown/StataMarkdown.html
它使用df<-mutate(.data = df, DateColumn= as.Date(DateColumn, "%m/%d/%Y"))
,它将创建不同的```{stata}块。因此,您应该能够运行Stata和运行R块。
我假设您必须导出和导入才能在不同块之间共享对象(尚未尝试过)。
Python https://cran.r-project.org/web/packages/reticulate/vignettes/r_markdown.html也存在类似的情况-这里的对象可以在R和Python之间共享(非常酷!)
答案 2 :(得分:0)
答案 3 :(得分:0)
如果您只是跳过R代码块中的engine.path,它应该可以工作。您可以轻松地在语言之间切换。