2010-06-28 3 views
8

저는 Sweave로 R 메모를 쓰고 있으며 일반적인 오류를 표시하려고합니다. 예 :스웨터로 오류 표시

<<echo=TRUE, eval=TRUE>>= 
x = 5 
#Case matters! 
x*X 
@ 

그러나 스웨 웨이 작업시 R 오류로 인해 문서가 컴파일되지 않습니다. 거기에 스웨터를 컴파일하고 (멋지게 formated) 오류를 표시 할 수있는 방법이 있습니까?

답변

2

try() 명령으로 오류를 줄 바꿈하십시오.

<<echo=FALSE,eval=TRUE,results=verbatim>> 

만에 다시 셰인에서 알 수 있듯이

> {print(1); try(x*X); print(2)} 
[1] 1 
Error in try(x * X) : object 'X' not found 
[1] 2 
+0

나는 그것을 생각했지만 'try'를 표시하지 않으려합니다. – csgillespie

+1

제 생각에는 작동 할 수있는 옵션 (오류 = some.function)이있을 수 있지만 아무것도 찾을 수 없습니다. 각 코드 조각을 두 번 호출 할 수 있습니다. 한 번 시도하고 echo = FALSE이지만 eval = TRUE로 설정하고 오류 메시지를 캡처합니다. 그런 다음 한번 시도하지 않고 설정이 취소되었습니다. 그런 다음 오류 메시지를 별도로 인쇄하십시오. – Shane

8

내가 그렇게 말할 수 경우는, knitr, "다음 세대 Sweave"와 비 문제입니다. Sweave에서 어렵거나 불가능한 오류 및 경고를 기본적으로 표시하며 다른 유용한 기능 (구문 착색, PGF 통합 및 초기 애니메이션의 플롯 애니메이션과 같은)이 많습니다. 적극적으로 개발되고 유지됩니다.

코드는 동일한 패키지에서 제공하는 Sweave2knitr 코드를 사용하여 한 번 변환해야합니다.