Преобразование * .md в * .pdf с помощью RStudio

Думаю, у меня проблема с MikTeX. В RStudio я нажал кнопку «Сшить PDF» и получил это сообщение об ошибке.

Это pdfTeX, версия 3.1415926-2.3-1.40.12 (MiKTeX 2.9, 64-разрядная версия)
pdflatex: Не удалось найти файл дампа памяти.
pdflatex: Данные: pdflatex.fmt

Затем я выполнил первую инструкцию на странице http://docs.miktex.org/manual/formats.html Затем я перезагрузил свой компьютер.

На данный момент я не знаю, нужно ли мне добавлять файл дампа памяти, и если да, то как это сделать.

Затем я попробовал Knit Word, и это прекрасно сработало, создав документ Word 2007.

Я использую RStudio. У меня есть документ с разметкой R Ira.Rmd. Были созданы файлы Ira.md и Ira.html. Хочу сохранить как Ira.pdf. Я загрузил и запустил pandoc в командной строке с помощью

pandoc  Ira.md –o Ira.pdf. 

Я получил следующее сообщение об ошибке.

Pandoc: Ошибка при создании PDF из источника TeX. Это pdfTeX, версия 3.1415926-2.3.1.40.12 Pdflatex: Не удалось найти файл дампа памяти. Pdflatex: Данные: pdflatex.fmt

Может ли кто-нибудь простыми словами объяснить, как я могу выполнить это преобразование файлов? Я использую следующее.

Windows 7. Версия R: 3.0.2 Версия RStudio: 0.98.684

Я прочитал https://github.com/rstudio/rmarkdown, но до сих пор не понимаю, как конвертировать мой файл.

ОБНОВЛЕНИЕ Я редактирую свой вопрос.

Я пытаюсь преобразовать файл уценки R в PDF. Я создал файл RMD в R Studio. Одним нажатием кнопки я успешно создал HTML-файл, заполненный кодом R.

Я использую R версии 3.0.2

Я использую RStudio версии 0.98.684

Не знаю, актуально ли следующее.

Мой файл .Rprofile содержит следующую строку.

setwd("C:/Users/Ira/Documents/Statistics")

Я запустил следующее

> getwd()
[1] "C:/Users/Ira/Documents/Statistics"

Я попробовал все предложения. Спасибо. Однако я продолжаю получать сообщения об ошибках при попытке конвертировать в PDF. В моих последних сообщениях была предпринята попытка опубликовать сообщения об ошибках.

Настоящий файл Rmarkup: IraAppliedStats.Rmd

При нажатии на Knit создается желаемый HTML-файл.

Я успешно выполнил команды:

install.packages("devtools"); devtools::install_github("rstudio/rmarkdown")

library(rmarkdown)

С консоли я выполнил следующую команду, но получил ошибку.

render(input = "toPDF2.rmd", output_format = "pdf_document", output_file = "toPDF2.pdf")

Я наблюдал за монитором. После создания нескольких фрагментов я начал видеть несколько сообщений, таких как следующие, после того, как несколько фрагментов были завершены.

* Предупреждение в (if (out_format (c ("latex", "sweave", "listings", "markdown"))) sanitize_fn else str_c) (path,: точки в путях фигур заменены на _ ("IraAppliedStats_Rmd_files / figure-latex / безымянный-кусок-10 ") *

Также у каждого чанка было следующее сообщение.

обычный текст без кода R

Большая часть документа - это код R. Эта же строка появляется, когда я создаю HTML-файл.

Суть сообщения об ошибке вроде такова.

pandoc.exe: ошибка при создании PDF из источника TeX. Это pdfTeX, версия 3.1415926-2.3-1.40.12 (MiKTeX 2.9, 64-разрядная версия) pdflatex: Не удалось найти файл дампа памяти.

Затем с помощью Блокнота я добавил следующие две строки в верхнюю часть файла IraAppliedStats.md.

* заголовок: IraAppliedStats.md, вывод: pdf_document *

Я закрыл Блокнот.

Я снова запустил команду.

render(input = "IraAppliedStats.Rmd", output_format = "pdf_document", output_file =    "IraAppliedStats.Rmd.pdf")

Это не помогло, так как я снова получил сообщение об ошибке, а PDF-файл не был создан.

Конец добавления / редактирования


person user2738483    schedule 03.03.2014    source источник
comment
Взгляните на pander - это может облегчить жизнь.   -  person jbaums    schedule 03.03.2014
comment
Я посмотрел. Есть ли команда, которую я могу использовать для преобразования?   -  person user2738483    schedule 03.03.2014
comment
Вяжите .Rmd, а затем используйте Pandoc.convert. Но ваша проблема может сохраниться. Возможно, это, this или это может помочь.   -  person jbaums    schedule 03.03.2014
comment
@ user2738483 Я думаю, нам нужно увидеть полное содержимое вашего файла уценки, чтобы определить, связана ли проблема с файлом или вашими настройками R / RStudio. Создайте gist, который содержит полный код вашего файла уценки, а затем вставьте URL-адрес в свой вопрос здесь .   -  person Ben    schedule 04.03.2014


Ответы (2)


Используя пакет rmarkdown (включенный в RStudio версии 0.98.682, текущая предварительная версия) конвертировать Rmd в PDF очень просто, есть единственная функция, которая выполняет преобразование: render.

Вот мой файл уценки (пример, который создается при запуске нового Rmd в RStudio). Предположим, он называется Untitled.Rmd и сохраняется в рабочем каталоге (и при условии, что ваш дистрибутив LaTeX полностью обновлен, и у вас установлена ​​последняя версия версия Pandoc):

---
title: "Untitled"    # you must have lines similar to these in your Rmd file
output: pdf_document # this is how R knows to convert this file to a PDF
---

This is an R Markdown document. Markdown is a simple formatting syntax for authoring HTML, PDF, and MS Word documents. Click the **Help** toolbar button for more details on using R Markdown.

When you click the **Knit** button a document will be generated that includes both content as well as the output of any embedded R code chunks within the document. You can embed an R code chunk like this:

```{r}
summary(cars)
```

You can also embed plots, for example:

```{r, echo=FALSE}
plot(cars)
```

Note that the `echo = FALSE` parameter was added to the code chunk to prevent printing of the R code that generated the plot.

Затем в консоли запускаю:

library(rmarkdown)
render("Untitled.Rmd") # you could also use "Untitled.md"

И тогда я получаю Untitled.pdf в моем рабочем каталоге, который выглядит так:

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

В качестве альтернативы, вот длинный способ сделать это, если вы не можете использовать эту версию RStudio или не хотите включать эти строки title: и output: в свой код уценки:

  # Load packages.  
  require(knitr)
  require(markdown)

  # Process your .Rmd and generate a .pdf file 
  # (including smart punctuation and grey background of code blocks)
  # For this step you'll need to have two other programs installed on your computer
  # 1. Pandoc: http://johnmacfarlane.net/pandoc/installing.html
  # 2. LaTeX: follow the instructions on the Pandoc download page

  filen <- my_rmd_filename # name of the markdown file without .Rmd suffix
  knit(paste0(filen,".Rmd"))
  system(paste0("pandoc -s ", paste0(filen,".md"), " -t latex -o ", paste0(filen,".pdf"), " --highlight-style=tango  -S"))

  # Now find the location on your computer where the PDF file was created:
  getwd()

Подробнее о пакетах и ​​версиях, которые я использую для этого:

> sessionInfo()
R version 3.0.2 (2013-09-25)
Platform: x86_64-w64-mingw32/x64 (64-bit)

locale:
[1] LC_COLLATE=English_United States.1252  LC_CTYPE=English_United States.1252   
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C                          
[5] LC_TIME=English_United States.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
[1] rmarkdown_0.1.4

loaded via a namespace (and not attached):
[1] evaluate_0.5.1 formatR_0.10   knitr_1.5      stringr_0.6.2  tools_3.0.2    yaml_2.1.10
person Ben    schedule 03.03.2014
comment
Как мне скачать библиотеку rmarkdown? ›Библиотека (rmarkdown) Ошибка в библиотеке (rmarkdown): нет пакета с именем« rmarkdown » - person user2738483; 03.03.2014
comment
С помощью этих строк кода: install.packages("devtools"); devtools::install_github("rstudio/rmarkdown") Я думаю, что он также встроен в версию RStudio, о которой я говорю. - person Ben; 03.03.2014
comment
@ user2738483, в вашем файле уценки должны быть строки, начинающиеся с title: Ira.md и output: output: pdf_document. - person Ben; 03.03.2014
comment
Спасибо. Однако я все еще не могу создать файл PDF. Прежде чем я сообщу подробности своей последней попытки, я хотел бы получить информацию, которая может иметь или не иметь отношения к делу. Когда я только начал работать с R Markup, мои файлы находились в каком-то подкаталоге. Код не удался, поскольку, насколько я помню, не удалось найти некоторые файлы. Затем я переместил свои файлы в свой основной каталог R, а затем создал действительно хорошие HTML-файлы. Мой файл .Rprofile содержит следующую строку. setwd (C: / Users / Ira / Documents / Statistics) Я создал новый файл с именем toPDF2.rmd - person user2738483; 04.03.2014
comment
Весь файл выглядит следующим образом: title: toPDF2.md output: pdf_document Ira Sharenow {r} library(foreign) library(sqldf) Из RStudio в сценарии R я запустил следующую строку. файл обработки render (input = toPDF2.rmd, output_format = pdf_document, output_file = toPDF2.pdf): toPDF2.rmd | ...................... | 33% обычный текст без кода R | .......................................... . | 67% метка: безымянный-кусок-1 | ........................................ ......................... | 100% - person user2738483; 04.03.2014
comment
library \ 3.0 \ rmarkdown \ rmd \ latex \ default.tex --highlight-style tango --latex-engine pdflatex --variable geometry: margin = 1in pandoc.exe: Ошибка создания PDF из источника TeX. Это pdfTeX, версия 3.1415926-2.3-1.40.12 (MiKTeX 2.9, 64-разрядная версия) pdflatex: Не удалось найти файл дампа памяти. pdflatex: Данные: pdflatex.fmt Ошибка: преобразование документа pandoc завершилось неудачно. Дополнительно: Предупреждающее сообщение: запущена команда 'C: / Program Files / RStudio / bin / pandoc / pandoc toPDF2.utf8.md --to latex --from markdown + autolink_bare_uris + ascii_identifiers + tex_math_single_backsl - person user2738483; 04.03.2014
comment
обратная косая черта --output toPDF2.pdf --filter C: / Program Files / RStudio / bin / pandoc / pandoc-citeproc --template C: \ Users \ Ira \ Documents \ R \ win-library \ 3.0 \ rmarkdown \ rmd \ latex \ default.tex --highlight-style tango --latex-engine pdflatex --variable geometry: margin = 1in 'имел статус 43 - person user2738483; 04.03.2014
comment
Следить за вашими комментариями невозможно. Измените исходный вопрос, включив в него достаточно подробностей, чтобы мы могли воспроизвести вашу ситуацию. - person Ben; 04.03.2014

Вам необходимо установить RStudio после установки MikTek.

person user3888902    schedule 29.07.2014