2014-12-08 5 views
0
나는이 질문은 여기에 대한 의미 있고 적절한 희망

로 이전에 생성 된 R 객체를 가져 오기 : Rmarkdown

는 기본적으로 나는 매우 긴 루프 인 데이터 무작위 시뮬레이션을 포함하는 RMD 파일 내에서 코드를 작성하고있다. 이 프로세스는 완료하는 데 꽤 오랜 시간이 걸립니다 (> 2 분 - 큰 시뮬레이션입니다). 결과를 저장 한 다음이 결과를 사용하여 Rmd 보고서에서 다양한 방식으로 분석하고 시각화합니다.

그러나 보고서를 만들고 편집 할 때 코드 및 텍스트 편집으로 인해 html 출력이 어떻게 변경되는지 확인할 수 있습니다. 내가 knitr : html 명령을 실행할 때마다 2 분 동안 데이터 무작위 화를해야합니다. 분명히 좌절감을 느낄 수 있습니다.

for 루프 프로세스를 Rmd 파일 외부에서 한 번 수행하고 결과를 저장 한 다음이 결과를 Rmd 파일로 가져 오면됩니다. 나는 Rmd가 지구 환경에서 가져올 수 없다고 확신합니다. 나는 누군가가 이것을하는 방법을 알고 있는지 궁금해?

답변

2

saveRDS을 사용하여 시뮬레이션 결과를 rds 파일에 저장하십시오. 그런 다음 Rmd 파일의 상단에 readRDS에 전화를 겁니다. 블록에서 echo = FALSE을 사용하여이 작업을 수행하려고합니다. 당신이 뭘 하려는지

0

메뉴를 참조 할 각 '청크'

에서 생성 된 결과를 캐시하는 것입니다. 난 당신이 RStudio를 사용하여 희망

http://yihui.name/knitr/demo/cache/

는 캐싱

기본적으로 R. https://www.google.com.au/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=using%20Ipython%20with%20R 에 IPython을 사용하여 확인 마십시오, 또는

훨씬 더 쉽게, IPython의 각 셀에서 생성 된 모든 데이터 (R/Python과 관계없이) 각 셀에 캐시되고 셀간에 공유 가능합니다.

+1

긴 시뮬레이션 인 경우 캐싱보다 결과를 저장하는 데 영구적 인 방법을 사용하는 것이 좋은 아이디어입니다. –

+0

@RichieCotton 예 .R 개체를 .rds 파일로 저장하면 큰 R 개체 또는 생성하는 데 오랜 시간이 걸리는 개체에 적합합니다. .rds 파일을 메모리에 보관하는 것보다는 캐시를 읽는 것보다 오래 읽는 것이 좋습니다. – biobirdman

관련 문제