Over the last year I have been involved in a large number of training courses and projects that have involved reporting in Microsoft Excel, Word and Powerpoint in some way. However, my default is not to jump straight to dynamic reporting tools like knitr and RMarkdown or Shiny. Why? Because for the majority of R’s commercial audience these tools don’t provide the functionality that they really need.
Firstly, as amazing as Shiny is for interactive interaction with non-R users (and I am a big user and lover of Shiny as you might have noticed in previous blog posts and talks) there are still times when the output needs to be a static report. More often than not, either due to familiarity or due to the report being part of a wider reporting workflow, the format must be Microsoft.
So what about RMarkdown? You can produce word documents from RMarkdown, can’t you? You can. But in talking to customers about their wider needs the same thing comes up time and again, “I need others to be able to contribute to my document” In other words: “My boss wants to add comments, and make tweaks”. The reality is that this is difficult with RMarkdown (not for an R user maybe, but those who have tried sending out RMarkdown documents to their bosses instead of Word documents will know what I mean). Even if you produce a Word document from RMarkdown as soon as they have updated it you’ll need to spend time copying and pasting back into the original “.RMD” file so that you can update the graphics and tables. And this is why I love David Gohel’s ReporteRs.
If you haven’t used it I urge you to give it a go. The feature that I love the most is the bookmarking. By making use of the bookmarking feature of Word and Powerpoint you can insert content exactly where you want it to be. You can allow other users to contribute to your document and then insert updated graphics and tables at the desired locations. This feature also makes working with existing corporate templates simple and fits in with existing Microsoft based workflows.
Beyond that you can use ReporteRs to create impressive tables with features that you will never achieve in RMarkdown alone (merging of cells is one of the common requirements with colouring a close second!). Just like RMarkdown you can insert graphics and code if you really need to (but let’s be honest, how often do you send R code in a report to your management team?). You can even write your whole document from R and if all that doesn’t win you over, it also works with the magrittr pipe.
It’s all of these things, along with that fact that it’s so simple to use, that have made ReporteRs a valuable tool for me and the reason it has made it into our training courses (and EARL 2016 workshops in London and Boston). Thanks to David Gohel for a great and simple to use reporting tool that fills a valuable gap!