有没有一种简单的方法可以自动删除

\begin{tabular}{@{\extracolsep{5pt}}lc}


\end{tabular}

在Stargazer LaTeX输出的开始和结束处排成一行?

确实,我只需要内部LaTeX代码,并从stargazer生成的TeX文件中手动删除这些行,这完全是浪费时间...

最佳答案

定义的用于在 stargazer 中创建LaTeX输出的每个函数都在(内部)包装函数.stargazer.wrap中定义。因此,自动更新组件并不容易。您要么必须复制一份本地维护的软件包,要么每次加载软件包时都要编辑.stargazer.wrap函数。

遵循How do I override a non-visible function in the package namespace?的指导,这是后者的方法(管理您自己的副本将需要执行类似的操作):

  • 加载stargazer:
    > library(stargazer)
    
  • 编辑.stargazer.wrap命名空间/包中的stargazer函数:
    > fixInNamespace(".stargazer.wrap", pos="package:stargazer")
    
  • .data.frame.table.header函数中查找并删除至少4206-4207行:

    从Stargazer .tex输出中删除\begin {tabular}-LMLPHP

    这两行用于打印tabular header 。
  • .publish.table函数中查找并删除至少3385行:

    从Stargazer .tex输出中删除\begin {tabular}-LMLPHP

    该行打印\end{tabular}(加上换行符)。
  • 关于从Stargazer .tex输出中删除\begin {tabular},我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31881065/

    10-10 01:47