Как мне сгенерировать документ (.rtf, .doc, .odt) из R - PullRequest
17 голосов
/ 10 ноября 2010

Каков наилучший способ создания файла текстового процессора (в идеале настолько независимого от платформы, насколько это возможно, но подойдут нативные форматы Word) с изображениями на нем из статистического языка R?

Ответы [ 6 ]

13 голосов
/ 10 ноября 2010

Стандартный движок Sweave - это один из вариантов, если вы можете работать с LaTeX - но я предполагаю, что это растягивает аспект "текстового процессора" одним касанием!В качестве альтернативы odfWeave является связанным пакетом, предоставляющим новый движок для Sweave, который будет работать с документами OpenOffice.org.

В представлении задач Reproducible Research есть и другие параметрыв CRAN, хотя для некоторых вариантов, ориентированных на MS Office, требуется специальное использование Windows.

4 голосов
/ 10 ноября 2010

Здесь - мое решение. Он использует Sweave с разметкой reStructuredText , которая позволяет легко создавать документы odf, Latex и HTML из одного источника. См. здесь для различных авторов, включенных в документалы.

Существует также rst2wordml писатель, который не реализует все функции отдыха, но вы можете найти его также полезным. Он работает с примером из моего блога (первая ссылка), если вы удалите директиву оглавления.

4 голосов
/ 10 ноября 2010

как насчет пакета R2wd ?

3 голосов
/ 07 июня 2013

Также стоит упомянуть: RTF-пакет не такой мощный, как некоторые другие опции, но у него меньше обучения.

2 голосов
/ 10 ноября 2010

Я бы порекомендовал Emacs Org-Mode с Org-Babel и R. Это означает, что вы можете сделать R как часть документа, используя грамотное программирование с профессиональным выводом в PDF (через латекс).

См.:

http://orgmode.org/worg/org-contrib/babel/uses.php

http://orgmode.org/worg/org-contrib/babel/languages/ob-doc-R.php

0 голосов
/ 10 февраля 2018

Лучшим решением кажется пакет для сотрудника: https://cran.r -project.org / web / packages / employee / index.html

library(officer)
doc <- read_docx() %>%
body_add_par("A title", style = "heading 1") %>%
body_add_par("Hello world!", style = "Normal") %>%
body_add_par("centered text", style = "centered")
print(doc, target = "body_add_par.docx" )
...