Data Mining with Rattle and R
DIT Analytics Club 07 March, 2013 Peadar Kearney's, Dame Street
Colman McMahon
colman@[Link]
[Link]/in/colmanmcmahon
Agenda
Intro Data mining Rattle installation Rattle workflow Appendix
Agenda
Intro Data mining Rattle installation Rattle workflow Appendix
Bio
Professional Background: Film, VFX, Digital Media Currently: PhD Fellow, UCD Dynamics Lab
PhD: Policy network analysis Creative Industries
[Link]
Technologies: Social Network Analysis Agent Based Modelling Data/statistical analysis
[Link]/casl/
Data Mining with Rattle and R The Art of Excavating Data for Knowledge Discovery
Graham Williams
Springer, 2011 ISBN 978-1-4419-9889-7
08/03/13
[Link]
Rattle
Rattle the R Analytical Tool To Learn Easily
Presents statistical & visual summaries of data Transforms data into forms that can be readily modelled Builds models (unsupervised and supervised) from the data Graphically presents the performance of models Scores new datasets
08/03/13
[Link]
Rattle
Built on the statistical language R an understanding of R is not required in order to use it
Simple to use, quick to deploy, and allows us to rapidly work through the data processing, modelling, and evaluation phases of a data mining project
Can migrate from Rattle to R when we need to fine-tune and further develop our data mining projects
08/03/13
[Link]
Rattle GUI
08/03/13
[Link]
Agenda
Intro Data mining Rattle stack Rattle workflow Appendix
CRISP-DM
Cross Industry Process for Data Mining (CRISP-DM, 1996) framework for delivering data mining projects. 1) Problem Understanding 2) Data Understanding 3) Data Preparation 4) Modelling 5) Evaluation 6) Deployment
08/03/13
[Link]
10
Rattle GUI
08/03/13
[Link]
11
Agenda
Intro Data mining Rattle installation Rattle workflow Appendix
Rattle stack
Rattle
08/03/13
[Link]
15
([Link])
R - a sophisticated statistical software package easily installed, instructional, state-of-the-art, and it is free and open source
The basic modus operandi - write scripts using the R language Steeper learning curve than using GUI based systems, but once over the hurdle, becomes relatively easy
08/03/13
[Link]
16
R Project
([Link])
08/03/13
[Link]
17
Rattle
([Link])
08/03/13
[Link]
18
Installation
Install R [Link]
StartR
Install Rattle >[Link]("rattle") Load rattle into the R library >library(rattle) >rattle()
08/03/13 [Link] 19
Agenda
Intro Data mining Rattle installation Rattle workflow Appendix
Rattle workflow
1) Load a dataset 2) Select variables and entities for exploring and mining 3) Explore the data to understand how it is distributed or spread 4) Transform the data to suit our data mining purposes 5) Build our models 6) Evaluate the models on other datasets 7) Export the models for deployment
08/03/13
[Link]
21
Workflow - tabs
08/03/13
[Link]
22
08/03/13
[Link]
23
Explore
Provides a textual overview of the data
Explore detailed
Explore (graphically)
Explore (graphically)
Figure 6.3: The parallel coordinates plot from latticist
Figure 6.9: Colourful brushing of multiple scatterplots
Figure 6.10: GGobis scatter plot matrix.
Figure 6.11: GGobis parallel coordinates plot.
Test
various statistical tests, e.g. the T-test and F-test
Transform
Normalising Filling in missing values Turning numeric variables into categoric variables (and vice versa) Dealing with outliers Removing variables or observations with missing values
Cluster
Allows data miners to break data into more meaningful groups and then contrast the different clusters against each other
Associate
Model
Decision Trees
Boosting
Boosting
Figure 13.3: The variable importance plot for a boosted model.
Evaluate
A variety of options for evaluating the performance of our models. Training Validation Testing Full
Figure 15.5: Four risk charts displayed to compare performances of multiple model builders on the audit dataset.
First Model (example)
First model
Once we have processed our data, we can build a model
1) Click on the Execute button
Rattle will notice that no dataset has been identified
2) The sample weather dataset will be offered
Click Yes
3) Click on the Model tab
This is where we tell Rattle what kind of model we want to build
4) Click on the Execute button.
08/03/13
[Link]
44
08/03/13
[Link]
45
Building a Model
08/03/13
[Link]
46
Figure 2.5
08/03/13
[Link]
47
Figure 2.6: The target variable, RainTomorrow, is skewed, with Yes being quite under-represented 08/03/13 [Link] 48
Appendix
08/03/13
[Link]
49
Installation
Install R [Link]
StartR
Install Rattle >[Link]("rattle") Load rattle into the R library >library(rattle) >rattle()
08/03/13 [Link] 50
Articles on Rattle
Rattle: A Data Mining GUI for R [Link]
Getting started with data mining in R using Rattle [Link]
08/03/13
[Link]
51
R Resources (sample)
Data Manipulation with R (Spector, 2008) covers basic data structures, reading and writing data, subscripting, manipulating, aggregating, and reshaping data
Introductory Statistics with R (Dalgaard, 2008) - good introduction to statistics using R. Modern Applied Statistics with S (Venables and Ripley, 2002 - an extensive introduction to statistics using R.
Data Analysis and Graphics Using R (Maindonald and Braun, 2007) - excellent practical coverage of many aspects of exploring and modelling data using R
The Elements of Statistical Learning (Hastie et al., 2009) is a more mathematical treatise, covering all of the machine learning techniques discussed in this book in quite some mathematical depth.
R for SAS and SPSS Users (Muenchen, 2008) is an excellent choice Lattice: Multivariate Data Visualization with R (Sarkar, 2008) - covers the extensive capabilities of one of the graphics/plotting packages available for R. ggplot2: Elegant Graphics for Data Analysis (Wickham, 2009) - newer graphics framework is detailed
Bivand et al. (2008) cover applied spatial data analysis, Kleiber and Zeileis (2008) cover applied econometrics Cowpertwait and Metcalfe (2009) cover time series
[Link] 52
08/03/13
Agenda
Intro Data mining Rattle installation Rattle workflow Appendix
Data Mining with Rattle and R
DIT Analytics Club 07 March, 2013 Peadar Kearney's, Dame Street
Colman McMahon
colman@[Link]
[Link]/in/colmanmcmahon