Форматирование таблиц в R Markdown для экспорта в документ MS Word

#r #ms-word #r-markdown #knitr #expss

#r #ms-word #r-markdown #knitr #expss

Вопрос:

Я начал использовать expss в R Markdown для создания таблиц с помощью Knitr. Я хотел бы автоматизировать таблицы и анализ для отчета, который мне нужно подготовить в формате Microsoft Word.

При вязании в HTML таблицы выглядят замечательно. Таблицы в Word отображаются в виде строк обычного текста и не похожи на таблицу. Поддерживает ли exps экспорт таблиц в Word? Есть ли инструкции о том, как это сделать?

Таблицы, созданные с помощью kable и dplyr, корректно отображаются в Word. Тем не менее, я изо всех сил пытаюсь воспроизвести HTML-таблицы, созданные с помощью expss.

 library(expss)
data(mtcars)
mtcars = apply_labels(mtcars,
                      mpg = "Miles/(US) gallon",
                      cyl = "Number of cylinders",
                      disp = "Displacement (cu.in.)",
                      hp = "Gross horsepower",
                      drat = "Rear axle ratio",
                      wt = "Weight (1000 lbs)",
                      qsec = "1/4 mile time",
                      vs = "Engine",
                      vs = c("V-engine" = 0,
                             "Straight engine" = 1),
                      am = "Transmission",
                      am = c("Automatic" = 0,
                             "Manual"=1),
                      gear = "Number of forward gears",
                      carb = "Number of carburetors"
)

cro(mtcars$am, mtcars$vs)
  

Я надеюсь, что мои таблицы Word будут выглядеть как примеры таблиц HTML, которые можно найти по этой ссылке или на этом изображении примера таблицы HTML

введите описание изображения здесь

Я также был бы рад, если бы они выглядели как таблицы в выводе моей консоли R

введите описание изображения здесь

Вывод таблицы в Word выглядит следующим образом:

Движок

V-engine

Прямой движок

Передача

Автоматическое

12

7

Руководство

6

7

#Общее количество обращений

18

14

Ответ №1:

expss использует htmlTable пакет для отображения таблиц. К сожалению, htmlTable не поддерживает вывод word. Однако вы можете использовать функции split_table_to_df и kable . Они предоставляют вам табличный вывод в Microsoft Word. Смотрите пример:

 library(expss)
library(knitr)
data(mtcars)
mtcars = apply_labels(mtcars,
                      mpg = "Miles/(US) gallon",
                      cyl = "Number of cylinders",
                      disp = "Displacement (cu.in.)",
                      hp = "Gross horsepower",
                      drat = "Rear axle ratio",
                      wt = "Weight (1000 lbs)",
                      qsec = "1/4 mile time",
                      vs = "Engine",
                      vs = c("V-engine" = 0,
                             "Straight engine" = 1),
                      am = "Transmission",
                      am = c("Automatic" = 0,
                             "Manual"=1),
                      gear = "Number of forward gears",
                      carb = "Number of carburetors"
)

cro(mtcars$am, mtcars$vs) %>% 
    split_table_to_df() %>% 
    kable()