2015-05-29 342 views
2

我正在嘗試編寫一個文檔,討論如何使用錯誤來向用戶傳遞參數問題。不幸的是,我似乎無法得到.Rmd文件。簡單例子:無法解決.Rmd文件中的錯誤<Anonymous> ... withCallingHandlers - > withVisible - > eval - > eval - >

Intro text 

```{r} 
some_function <- function(x, y) 
{ 
    if (x < 0) stop("x must be greater than 0") 
    x + y 
} 

some_function(3, 2) 
``` 

```{r} 
some_function(-3, 2) 
``` 

當我嘗試編織它可以將任何格式,我得到的錯誤

Quitting from lines 14-15 (test.Rmd) 
Error in some_function(-3, 2) : x < 0 
Calls: <Anonymous> ... withCallingHandlers -> withVisible -> eval -> eval -> some_function 

Execution halted 

一切我讀過到目前爲止指向該是一個問題無論是)不加載一個軟件包,或者b)在Rmd文件中設置錯誤的路徑。因爲我只在這裏使用基礎函數,並沒有引用任何文件(我知道,無論如何),我不認爲這些都是我的問題(但我很樂意成爲錯誤)。

關於我需要做什麼才能讓文檔編織的任何提示?

解決方案

添加以下的.Rmd

```{r, echo=FALSE} 
knitr::opts_chunk$set(error = TRUE) 
``` 

簡短說明頂部,RMarkdown V1使用error = TRUE默認,但RMarkdown V2採用error = FALSE。請參閱下面Josh的評論中的鏈接。

+0

是的,它會在一個錯誤停止針織(顯然發生在some_function(-3,2)調用什麼是你想要的結果它打印錯誤或東西 –

+0

這是正確的我想要的。?。它顯示錯誤 – Benjamin

回答

2

不要使用rstudio中的按鈕進行編譯。嘗試:

library("knitr") 
knit2html("file") 
+0

這很有趣,這使得該文件可以按照我的需要呈現,接下來的問題是我是否可以應用這個,以便我可以將它寫成封裝中的小插圖 – Benjamin

+1

請看這裏:http:// rmarkdown.rstudio.com/authoring_migrating_from_v1.html。這只是一個不同的默認塊設置knitr。 –

+0

現在我覺得很愚蠢,我以爲我已經嘗試過,這隻能意味着我已經清醒過久了。 – Benjamin

相關問題