Можно ли связать только один фрагмент кода и вывести код LaTeX на консоль? - PullRequest
0 голосов
/ 17 января 2019

Я пишу свою диссертацию в LaTeX и выполняю анализ данных в R. У меня уже есть мои текс-файлы с нужным форматированием и файлом уценки R для моего кода. Я использую только уценку R из-за улучшенного секционирования, а не для создания какого-либо отчета из него. Мой обычный рабочий процесс для создания таблиц состоял в том, чтобы сгенерировать таблицу регрессии в R, используя texreg или stargazer, и скопировать код LaTeX в мой текстовый файл. Но теперь мне нужно создать собственную таблицу регрессии, и я обнаружил, что пакет kableExtra имеет простой синтаксис, чтобы он выглядел хорошо, используя booktabs.

Можно ли сгенерировать код LaTeX только из одного кода, используя вызов kableExtra, не связывая весь мой документ и не переходя в сгенерированный файл .tex, чтобы скопировать и вставить часть таблицы в мою диссертацию?

Я вижу, что, вероятно, неправильно понимаю идею behing knitr, но я не решаюсь изменить свой рабочий процесс.

1 Ответ

0 голосов
/ 17 января 2019

Вот конкретный пример:

sink("texy.txt")
iris[1:2, 1:5] %>% 
  kable(format = "latex") %>% 
  kable_styling(font_size = 14) %>%
  column_spec(1, width = "6cm") %>% 
  capture.output() %>%
  cat(sep = "\n")
sink()

Теперь у меня есть texy.txt:

\begin{table}[H]
\centering\begingroup\fontsize{14}{16}\selectfont

\begin{tabular}{>{\raggedleft\arraybackslash}p{6cm}|r|r|r|l}
\hline
Sepal.Length & Sepal.Width & Petal.Length & Petal.Width & Species\\
\hline
5.1 & 3.5 & 1.4 & 0.2 & setosa\\
\hline
4.9 & 3.0 & 1.4 & 0.2 & setosa\\
\hline
\end{tabular}\endgroup{}
\end{table}
...