Beruflich Dokumente
Kultur Dokumente
Setia Pramana
Medical Epidemiology and Biostatistics Department
Karolinska Institutet, Stockholm, Sweden
Outlines
Motivations
R GUI
IsoGeneGUI
neaGUI
Summary
12/8/15
12/8/15
12/8/15
R GUI Projects
Integrated development environment
(IDE)/Script Editors aimed to provide
feature-rich environments to edit R scripts
and code: Rstudio (www.rstudio.com), and
architect (www.Openanalytics.eu)
Web based application: the Rweb
(Banfield, 1999), R.Net (www.u.arizona.edu
/~ryckman/Net.php), or gWidgetsWWW (Verzani,
2012).
12/8/15
R GUI Projects
Python: OpenMeta-Analyst (Wallace et al,
2012)
Java: JGR (Java GUI for R), Deducer
(Fellows, 2012), and Glotaran
(Snellenburg, 2012).
Php: R-php (http://dssm.unipa.it/R-php/)
Other extensions connect R to graphical
toolboxes for developing menus and
dialog boxes: Tcltk, Gtk.
Today, we focus on Tcltk
12/8/15
R GUI Tcl/Tk
Most commonly used: easy, no
additional software needed and ready to
be used in R (tcltk package)
R-Tcl/Tk interface from the tcltk
package (Dalgaard, 2001 and Welch,
2000).
The tcltk package allows the use of the
Tk (toolkit) graphical user interface
elements within R by embedding Tk
commands into the R language.
12/8/15
R GUI Tcl/Tk
R GUIs developed by using tcl/tk or
RGtk:
LimmaGUI (Wettenhall and Smyth,
2004),
LMMNorm (Haldermans, 2010),
IsoGeneGUI (Pramana et al. , 2010,
2012)
NeaGUI (Pramana et.al, 2013)
Rcommander (Fox, 2005)
RcmdrPlugin.biclustGUI (Pramana, 2011)
12/8/15
10
R GUI Tcl/Tk
R GUIs developed by using tcl/tk or
RGtk:
Independen
t GUI
2004),
LMMNorm (Haldermans, 2010),
IsoGeneGUI (Pramana et al. , 2010,
2012)
NeaGUI (Pramana et.al, 2013)
Rcommander (Fox, 2005)
RcmdrPlugin.biclustGUI (Pramana, 2011)
12/8/15
11
R GUI Tcl/Tk
R GUIs developed by using tcl/tk or
RGtk:
LimmaGUI (Wettenhall and Smyth,
2004),
LMMNorm (Haldermans, 2010),
IsoGeneGUI (Pramana et al. , 2010,
2011)
Embeded
GUI
12
IsoGeneGUI
To perform dose response microarray
analysis in early drug development.
Identify genes with a monotonic trend in
the expression levels with respect to the
increasing doses
CLI based: IsoGene package
(Pramana,2010)
12/8/15
13
IsoGeneGUI
14
12/8/15
15
12/8/15
16
12/8/15
17
12/8/15
18
12/8/15
19
12/8/15
20
Vignette:
http://www.bioconductor.org/packages/2.11/bioc/vignettes/IsoG
eneGUI/inst/doc/IsoGeneGUI.pdf
Users manual:
http://www.ibiostat.be/software/IsoGeneGUI/files/IsoGeneGUI
%20users'%20manual.pdf
12/8/15
21
neaGUI
To help interpretation of
differentially expressed
(DE) genes in context of
biological processes,
pathways and networks.
Perform network
enrichment analysis.
Input: DE genes
Output: enriched
pathways statistics
based on gene
interaction networks.
12/8/15
22
neaGUI Output
12/8/15
23
neaGUI Output
12/8/15
24
25
12/8/15
26
12/8/15
27
28
Edit Box
Name <- tclVar("")
entry.Name <-tkentry(tt,width="20",
textvariable=Name)
tkgrid(tklabel(tt,text="Name:"), entry.Name)
12/8/15
29
12/8/15
30
12/8/15
31
OK
",
12/8/15
32
12/8/15
33
34
35
36
R Commander (Rcmdr)
Developed by John Fox from McMaster
University, Canada.
Not only providing GUIs but also
rendering users to R commands
Advantages:
Ease of use. Beginners will have less
problem to start to use Rcmdr.
Coverage. Offers wide range of basic
statistics analysis and data management.
12/8/15
37
R Commander (Rcmdr)
Advantages:
Cross-platform functionality. Primarily under
Windows, but also available in Linux and
Macintosh OS/X.
Extensibility: one can develop plug-in"
packages for new methods/analysis.
Protects the novices from errors. Limited
options related to the current context will
minimize the errors made by users.
Exposes users to R commands.
12/8/15
38
R Commander
Main Window:
Script
Window
Output
Window
Messages
12/8/15
39
RcmdrPlugin.biclustGUI
An extension for the Rcmdr for
biclustering analysis.
Standard Rcmdr Menu
12/8/15
40
RcmdrPlugin.biclustGUI
An extension for the Rcmdr for
biclustering analysis.
Rcmdr
with biclustering
plugin
Standard
Rcmdr Menu
12/8/15
41
42
12/8/15
43
44
doItAndPrint(paste("CCbics <-biclust(as.matrix(",.activeDataSet,"),
method=BCCC(), delta=", delta, ", alpha= ", alpha, ", number=
",number ,")" , sep="") )
doItAndPrint("CCbics ")
12/8/15
45
Output
12/8/15
46
RcmdrPlugin.biclustGUI
12/8/15
47
12/8/15
48
biclustMenu
topMenu
12/8/15
49
biclustMenu
topMenu
12/8/15
50
biclustMenu
topMenu
12/8/15
51
biclustMenu
topMenu
12/8/15
52
biclustMenu
topMenu
""
"packageAvailable
12/8/15
53
biclustMenu
topMenu
Define
Define
menu
The
second
item
menu
item
""
"packageAvailable
12/8/15
54
biclustMenu
topMenu
Menu
Menu item
item
second
belongs
belongs to
to
The
line in menus.txt defines a menu item
under biclust menu:
item biclustMenu command "Biclustering Plaid " PlaidWin
('RcmdrPlugin.BiclustGUI')"
""
"packageAvailable
12/8/15
55
biclustMenu
topMenu
Menu
Menu item
item
The second invokes
line
aa menus.txt
invokesin
command
command
under biclust
menu:
""
"packageAvailable
12/8/15
56
biclustMenu
topMenu
Text
Text
menus.txt
displayed
displayed
""
"packageAvailable
12/8/15
57
biclustMenu
topMenu
Called
Called
defines
function
function
""
a menu item
"packageAvailable
12/8/15
58
biclustMenu
topMenu
Conditional activation
activation
The second line in menus.txt defines Conditional
a and
menu
item
and installation
installation
under biclust menu:
item biclustMenu command "Biclustering Plaid " PlaidWin
('RcmdrPlugin.BiclustGUI')"
""
"packageAvailable
12/8/15
59
Next Stage
Error handling: message boxes, warnings, etc.
Trial by other people.
Compile as a package.
Submit in a repository for development we
can use R-forge.
When all ready, submit to a repository,
Bioconductor, or CRAN.
Bioconductor more restrict and have to comply
all guidelines:
http://www.bioconductor.org/developers/packag
e-guidelines
/
12/8/15
60
Summary
A GUI could help novice R users for utilizing all the
power of R.
Increase the use of our package/methods
especially by scientists with no/less knowledge of
R.
12/8/15
61
Summary
A GUI could help novice R users for utilizing all the
power of R.
Increase the use of our package/methods
especially by scientists with no/less knowledge of
R.
Things to consider in developing a GUI:
Type of GUI (spreadsheets, menu/dialog boxes),
Tool to develop (tcltk, java)
Embedded/Independent.
Single/Multi dialog boxes
12/8/15
62
Summary
Independent GUI: really for a specific use, no need
of useless capabilities, simpler.
Rcmdr PlugIn in: easier, all standard data
manipulation and analysis is ready, users can
learn the command.
12/8/15
63
Summary
Independent GUI: really for a specific use, no need
of useless capabilities, simpler.
Rcmdr PlugIn in: easier, all standard data
manipulation and analysis is ready, users can
learn the command.
Make sure GUI is simple and user friendly.
Design Development Trial Packaging and
Storing
12/8/15
64
The GUIs
IsoGeneGUI:http
://www.bioconductor.org/packages/2.11/bioc/h
tml/IsoGeneGUI.html
neaGUI:
https://r-forge.r-project.org/projects/neagui/
biclustGUI: http://
www.ibiostat.be/software/BiclustGUI/index.html
Examples of RGUI:
http://www.sciviews.org/_rgui/
http://bioinf.wehi.edu.au/~wettenhall/RTclTkExa
mples
/
12/8/15
65
Next Development:
Isogene RSB : Web based development using
R Service Bus: http://
www.openanalytics.eu/r-service-bus
R Service Bus: plug R into a processes
independently of the technology used by other
software applications involved in the workflow.
Web Based neaGUI using shiny
Shiny: Easy web applications in R: http
://www.rstudio.com/shiny/
12/8/15
66
RSB-IsoGene
12/8/15
67
12/8/15
68
Collaborator
Karolinska Institutet, Sweden: Yudi Pawitan & Woojoo Lee
Scilifelab, Sweden: Andrey Alexeyenko
Johnson & Johnson Research and Development, Belgium: Luc
Bijnes & Willem Talloen.
Hasselt University, Belgium: Ziv Shkedy, Dan Lin, Philippe H,
Martin O Pushpike, Tatsiana K.
Open Analytics, Belgium: Tobias Verbeke
Johannes Kepler University of Linz, Austria: Sepp Hochreiters
Group
LMU Munich, Germany: Sebastian Kaiser
12/8/15
69
12/8/15
70
References
Pramana, S., Lin, D., and Shkedy Z., (2010), IsoGeneGUI
Bioconductor Package Vignette.
Pramana, S., Lin, D., Haldermans, P., Shkedy Z., and
Verbeke, T., De Bondt, A., Talloen, W., Gehlmann,. H
and Bijnens, L. (2010). IsoGene: An R Package for
Analyzing Dose-response Studies in Microarray
Experiments", R Journal 2/1.
Pramana, S., Lin, D., Haldermans P., and Verbeke, T.
(2102). A User Friendly Interface for Analyzing Doseresponse Studies in Microarray Experiments: The
IsoGene-GUI package, in Lin, D., Shkedy, Z., Yekutieli,
D., Amaratunga, D. and Bijnens L. (editors). Modeling
Dose-response Microarray Data in Early Drug
Development Experiments Using R, Springer.
12/8/15
71
References
Pramana (2011) RcmdrPlugin.BiclustGUI: A User Friendly
Interface for Biclustering Analysis, a chapter of PhD:
Statistical Methods for Microarray Experiments:
Analysis Dose-response Studies and Software
Development in R, Hasselt University, Belgium.
Pramana, S., Lee, W., Alexeyenko, A., Pawitan., Y. (2012).
neaGUI: A Graphical User Interface for Network
Enrichment Analysis.
Fox J (2005). The R Commander: A Basic-Statistics
Graphical User Interface to R." Journal of Statistical
Software, 14(9), 1-42.
Valero-Mora, P.M and Ledesma R.D. (2012) Graphical
User Interfaces for R. Journal of Statistical Software.
Verzani J (2007). An Introduction to gWidgets." R News,
12/8/15
72