Я использую пакет Hmisc
в R для создания воспроизводимой таблицы LaTex и хотел бы подавить некоторые горизонтальные линии (\midrule
), сгенерированные по умолчанию в режим booktabs. Я просеял документацию Hmisc, а также ряд решений Hmisc здесь и на tex.stackexchange, и я не верю, что на что-то подобное было дано ответ (но, пожалуйста, исправьте меня, если я ошибаюсь).Подавление горизонтальных линий Hmisc latex() в таблице
Вот минимальный пример, который должен быть воспроизводимым:
library(Hmisc)
myDF <- data.frame("foo" = c(1:10),
"bar" = rep(c("a","b"),5),
"baz" = c(21:30))
latex(myDF,
file="",
rowname = "",
rowlabel = "",
rgroup = c("Group A", "Group B", "Group C"),
n.rgroup = c(3, 4, 3),
booktabs = TRUE
)
который генерирует следующий вывод:
%latex.default(myDF, file = "", rowname = "", rowlabel = "", rgroup = c("Group A", "Group B", "Group C"), n.rgroup = c(3, 4, 3), booktabs = TRUE, )%
\begin{table}[!tbp]
\begin{center}
\begin{tabular}{lrlr}
\toprule
\multicolumn{1}{l}{}&\multicolumn{1}{c}{foo}&\multicolumn{1}{c}{bar}&\multicolumn{1}{c}{baz}\tabularnewline
\midrule
{\bfseries Group A}&&&\tabularnewline
~~&$ 1$&a&$21$\tabularnewline
~~&$ 2$&b&$22$\tabularnewline
~~&$ 3$&a&$23$\tabularnewline
\midrule
{\bfseries Group B}&&&\tabularnewline
~~&$ 4$&b&$24$\tabularnewline
~~&$ 5$&a&$25$\tabularnewline
~~&$ 6$&b&$26$\tabularnewline
~~&$ 7$&a&$27$\tabularnewline
\midrule
{\bfseries Group C}&&&\tabularnewline
~~&$ 8$&b&$28$\tabularnewline
~~&$ 9$&a&$29$\tabularnewline
~~&$10$&b&$30$\tabularnewline
\bottomrule
\end{tabular}\end{center}
\end{table}
Как я могу подавить некоторые или все вхождения «\ midrule» на выходе ?
Обратите внимание, что хотя я не привязан к решению этого вопроса с Hmisc
, у меня есть некоторые ограничения, которые флаг rgroup
решает очень эффективным способом. Хотя я не считаю, что xtable
или stargazer
(например) предоставляют удобные альтернативы, я, конечно, открыт для других пакетов, пока я могу сохранить макет с группировками строк, как показано в моем примере.
Спасибо, @alistaire! Это определенно решает непосредственную проблему. Я разбирал подобный хак, когда вы отправили свой ответ. Я оставлю вопрос открытым дольше, на всякий случай, если кто-то найдет собственное решение «Hmisc». – ashaw