ProgramingTip

R Markdown을 HTML로 변환하는 방법?

bestdevel 2020. 11. 17. 20:40
반응형

R Markdown을 HTML로 변환하는 방법? 즉, Rstudio 0.96에서“Knit HTML”은 무엇을 소유하고 있습니까?


Rstudio 0.96의 R Markdown 파일에서 "Knit HTML"을 어떤 명령이 실행됩니까?

내 동기는 다른 텍스트 편집 환경에서 동일한 명령을 실행하거나 더 큰 makefile.


덩어리 Sys.sleep(30)에 당신은 명령을 RStudio에 의해 호출 명확하게 무엇을 볼 수 있습니다. 기본적으로 그들은

  1. library(knitr); knit() 마크 다운 파일을 얻으려면;
  2. RStudio에는 마크 다운을 HTML로 변환하는 내부 함수가 있습니다.

두 번째 단계는 마크 다운 패키지 의 다음 버전에서 더 투명해질 것 입니다. 현재 knitr::knit2html('your_file.Rmd')RStudio가 제공하는 그대로 사용할 수있는 HTML 파일을 가져올 있습니다.


2019/09/17 업데이트 : 위 답변은 RStudio v0.96 (2012 년)에 적용됩니다. 이제 R 마크 다운은 rmarkdown::render()은퇴 된 R 패키지 마크 다운 대신 Pandoc 사용하는을을 통해 컴파일됩니다 . 내용은 R Markdown, Knitr, Pandoc 및 Bookdown. 자세한 관계 게시물 을 참조하십시오.


기본 펼쳐

이제 R markdown패키지가 신뢰할 수있는 기능을 Html로 복제 할 수 있습니다.

require(knitr) # required for knitting from rmd to md
require(markdown) # required for md to html 
knit('test.rmd', 'test.md') # creates md file
markdownToHTML('test.md', 'test.html') # creates html file
browseURL(paste('file://', file.path(getwd(),'test.html'), sep='')) # open file in browser 

여기서는 test.rmdR 마크 다운 파일의 이름입니다. 내가 찾아보기 URL 줄에 대해 100 % 확신하지 않는다는 점에 유의하십시오 (확실하지 않습니다 웹 브라우저에서 파일을 여는 것에 대한 제 질문 ).

markdownToHTML 옵션

좋은 점은 markdownToHTMLHTML을 만드는 방법에 많은 옵션이되는 것입니다 (참조 ?markdownHTMLOptions). 예를 들어 모든 헤더 정보가없는 코드 조각 만 경우 다음과 같이있는 수 있습니다.

markdownToHTML('test.md', 'test.html', options='fragment_only')

또는 하드 래핑 (즉, 마크 다운 소스에 단일 수동 줄 바꿈이있을 때 줄 바꿈 삽입)을 사용하지 않는 경우 'hard_wrap'옵션을 생략 할 수 있습니다.

# The default options are 'hard_wrap', 'use_xhtml', 
#      'smartypants', and 'base64_images'.
markdownToHTML('test.md', 'test.html', 
       options=c('use_xhtml', 'base64_images'))

Makefile

이것은 아마도 Rscript -e(예를 들어, 이와 같은 것)을 사용하여 makefile에 모두 추가 될 수도 있습니다 . 다음은 내가 함께 만든 기본 makefile 예제입니다. 여기서 testrmd 파일이 test.rmd.

RMDFILE=test

html :
    Rscript -e "require(knitr); require(markdown); knit('$(RMDFILE).rmd', '$(RMDFILE).md'); markdownToHTML('$(RMDFILE).md', '$(RMDFILE).html', options=c('use_xhtml', 'base64_images')); browseURL(paste('file://', file.path(getwd(),'$(RMDFILE).html'), sep=''))"

makefile은 내가 선호하는 마크 다운 옵션을 사용합니다. 즉,options=c('use_xhtml', 'base64_images')


knutshell의 knitr에서 매우 쉬운 명령 줄 방법 :

R -e "rmarkdown::render('knitr_example.Rmd')"

이것은 rmarkdown함께 설치되어야 install.packages(rmarkdown)하고 pandoc 이 설치되어 있어야합니다 (분명히 Rstudio와 함께 제공됩니다 . 내용 자세한 은 knutshell의 knitr 참조).

지금까지 사용했을 때 모든 곳에서 그림 디렉토리의 이미지가 아닌 HTML 파일에 멋지게 중간 파일이 정리합니다. RStudio에서하는 것과 일치하는 것입니다.


a.rmd가 R Markdown v2 문서 인 것처럼 보이기 때문에 knitr 대신 :: knit2html () rmarkdown :: render ()를 호출해야 할 것입니다.

참고 URL : https://stackoverflow.com/questions/10646665/how-to-convert-r-markdown-to-html-ie-what-does-knit-html-do-in-rstudio-0-9

반응형