R in spreadsheets (RExcel and a little bit of ROO) 



Erich Neuwirth, University of Vienna, Faculty of Computer Science

One of the major obstacles for make R available to a wider audience is the relatively steep learning curve. R as an extension for spreadsheets allows users to start in a familiar environment and use R as an extension of that environment.

R can be used from within RExcel according to different usage models:
- naive users: Excel has additionally menus which call R functions to transfer data from Excel, do computations in R and transfer results back to Excel. The user never sees R, there are just some additional menu triggered operations
- power users: users with some knowledge of R can write Excel VBA macros to create their own macro packages using R to perform statistical analyses in Excel.
- method developers: Excel can be used as data store and simple editor for R code. Data can be transferred from and to R, and code can be run directly from the spreadsheet


In these 3 usage models, Excel VBA macros run R code and get results. So this kind of usage is not embedded in the automatic recalculation  mode of spreadsheet programs. RExcel has the additional facility to create worksheet function which call R in the background and let Excel be in charge aud automatic recalculation.


Praticipants of the tutorial will gain experience with all 3 usage models and will also learn to write worksheet function using R. After the tutorial, they will be able to create Excel applications using R which can be delivered to users with very differernt levels of experience, and they will also have learned to use R more efficiently if data already are available as Excel workbooks and results are needed as tables in Excel workbooks.

We will also give a short introduction into similar mechanisms available for OpenOffice.