Форматирование таблиц в R Markdown для экспорта в документ MS Word - PullRequest
1 голос
/ 05 апреля 2019

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

При вязании на HTML таблицы выглядят замечательно. Таблицы в Word отображаются в виде строк простого текста и не похожи на таблицу. Поддерживает ли expss экспорт таблиц в 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

enter image description here

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

enter image description here

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

Двигатель

V-образный двигатель

прямой двигатель

Коробка передач

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

12

7

Руководство

6

7

# Всего случаев

* * 18 тысяча сорок-девять

14

1 Ответ

0 голосов
/ 08 апреля 2019

expss использует htmlTable пакет для рендеринга таблицы. К сожалению, htmlTable не поддерживает вывод слова. Однако вы можете использовать функции 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()
...