# Evaluate and echo different lines For demonstration purposes, we may want to show some source code in the output, but really evaluate different code in the background. ```{r} hook_source <- knit_hooks$get('source') knit_hooks$set(source = function(x, options) { res <- hook_source(x, options) gsub("(^|\n)#'#' ", '\\1', res) }) ``` The trick is to mask the source code in special comments (e.g. `#'#'`), and remove the comment markers later. Of course, you have to guarantee these markers are unique. ```{r test, echo=-3} x <- 2 ## 1/sqrt(2 * pi) * exp(-x^2/2) dnorm(x) ``` ```{r sdf} dfdfd ``` We used `echo=-3` to remove the 3rd expression from the source code, and `gsub()` to strip `#'#'` off. This is completely hack. Use with care. Example code: ```{r} ## Example code: paggregate(argent[, 2:5], by = list(Transect = argent$Transect, Season = argent$Season), FUN = sum) ```