<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.9.0">Jekyll</generator><link href="https://blog.lunean.com/feed.xml" rel="self" type="application/atom+xml" /><link href="https://blog.lunean.com/" rel="alternate" type="text/html" /><updated>2021-02-10T15:21:15+00:00</updated><id>https://blog.lunean.com/feed.xml</id><title type="html">Lunean</title><subtitle>Lunean</subtitle><author><name>Augustin Luna</name></author><entry><title type="html">Using RCy3 with Cytoscape: GSOC Wrap Up</title><link href="https://blog.lunean.com/r/2016/09/15/wrap-up-post.html" rel="alternate" type="text/html" title="Using RCy3 with Cytoscape: GSOC Wrap Up" /><published>2016-09-15T00:00:00+00:00</published><updated>2016-09-15T00:00:00+00:00</updated><id>https://blog.lunean.com/r/2016/09/15/wrap-up-post</id><content type="html" xml:base="https://blog.lunean.com/r/2016/09/15/wrap-up-post.html">&lt;p&gt;This summer I had the pleasure of working with the National Resource for Network Biology (&lt;a href=&quot;http://nrnb.org/index.html&quot;&gt;NRNB&lt;/a&gt; as a summer intern as part of &lt;a href=&quot;https://summerofcode.withgoogle.com/projects/#6682250145955840&quot;&gt;Google Summer of Code project&lt;/a&gt;. For my project (described more in depth in the &lt;a href=&quot;http://blog.lunean.com/2016/08/05/extending-rcy3-vignettes-google-summer-of-code-project/&quot;&gt;previous blog post&lt;/a&gt;) I wanted to make workflows for biologists to make their analyses more straightforward by using the programming language R with the Bioconductor package &lt;a href=&quot;https://bioconductor.org/packages/release/bioc/html/RCy3.html&quot;&gt;RCy3&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Today I want to discuss my experience with GSOC and working on my project this summer. In a forthcoming blog post I will go into more detail about the workflows that I worked on.&lt;/p&gt;

&lt;h2 id=&quot;my-experience&quot;&gt;My experience&lt;/h2&gt;

&lt;p&gt;Overall, working with NRNB as part of Google summer of Code was a great experience. I interacted with many different people and was well supported by my mentor and the overall community. It was a new challenge to work remotely for the whole of a project, but I am happy with how it turned out.&lt;/p&gt;

&lt;p&gt;I worked on different aspects of the connection between R and Cytoscape while creating the vignettes as part of this project. I received a lot of help from many different people. Before starting this project I played around with the cyREST API in R and python and &lt;strong&gt;Keichiro Ono&lt;/strong&gt; helpfully answered my questions about getting started with cyREST. One of the workflows that I wanted to work through included a Cytoscape plugin called Enrichment Map and &lt;strong&gt;Ruth Isserlin&lt;/strong&gt; of the Bader Lab (&lt;em&gt;website&lt;/em&gt;) provided a lot of troubleshooting and help for this vignette. We selected other Cytoscape applications for use with RCy3 and &lt;strong&gt;Scooter Morris&lt;/strong&gt; was often very helpful in understanding how they were working (and was often an author of these plugins).&lt;/p&gt;

&lt;p&gt;The developers of RCy3 were very helpful with this project. &lt;strong&gt;Tanja Muetze&lt;/strong&gt; provided a lot of expertise and encouragement along the way and &lt;strong&gt;Paul Shannon&lt;/strong&gt; and &lt;strong&gt;Barry Demchak&lt;/strong&gt; helped get the project off the ground and helped determine the extent of what would be possible using cyREST with RCy3. Finally, my mentor &lt;strong&gt;Augustin Luna&lt;/strong&gt; was great for discussing the direction of the project, and for providing expertise with web frameworks, R package development and general R coding. The GSOC projects were smoothly coordinated by &lt;strong&gt;Alexander Pico&lt;/strong&gt;, of the NRNB.&lt;/p&gt;

&lt;p&gt;The RCy3 package (stands for R to Cytoscape 3 and is actively developed by Tanja Muetze, Georgi Kolishovski, Paul Shannon) uses the &lt;a href=&quot;https://github.com/idekerlab/cyREST/wiki&quot;&gt;CyREST api&lt;/a&gt; to allow communication between R and Cytoscape. CyREST now comes with all installations of Cytoscape. It uses the API (application programming interface) from Cytoscape to send and receive information from R. This means that we can send data from R to Cytoscape and also receive information about the graphs that you have made in Cytoscape in R. This is useful for reproducibility, but also if you are analysing networks in ways that are not yet supported by plugins in Cytoscape. )&lt;/p&gt;

&lt;h2 id=&quot;working-with-cyrest&quot;&gt;Working with cyREST&lt;/h2&gt;

&lt;p&gt;For Cytoscape to be accessible to users of different programming languages an API called &lt;a href=&quot;https://github.com/cytoscape/cyREST&quot;&gt;CyREST&lt;/a&gt; has been developed in Dr. Ideker’s lab. More information about it is available in the &lt;a href=&quot;http://f1000research.com/articles/4-478/v1&quot;&gt;paper&lt;/a&gt;, in the &lt;a href=&quot;https://github.com/idekerlab/cyREST&quot;&gt;Github repository&lt;/a&gt; and on this &lt;a href=&quot;http://idekerlab.github.io/cyREST/&quot;&gt;website&lt;/a&gt; that lists all the commands that are available in the API.&lt;/p&gt;

&lt;p&gt;CyREST is now available as part of Cytoscape when you download versions 3.3 and newer. Before that it was a plugin that you could download and install in Cytoscape.&lt;/p&gt;

&lt;h3 id=&quot;difficulties-with-cyrest&quot;&gt;Difficulties with CyREST&lt;/h3&gt;

&lt;p&gt;Generally I didn’t have many problems using cyREST, but there were a few things that I struggled with:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;
    &lt;p&gt;Saving images from Cytoscape via cyREST is dependent on the size of the window that you have open. You can use a parameter “h” which sets the size of the final image, but the width is set automatically. Therefore to get different sized or shaped images it is necessary to manipulate your open Cytoscape window to the shape that you want before running your commands via cyREST.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Plugins in Cytoscape that present an API interface do not seem to have a standard verb-action vocabulary. It must be noted that developers that make these plugins are not under any obligation to present an API interface (and it is more work for them). This is not a large difficulty, but it can require some guessing of how plugins can be used via cyREST and what commands are available from a specific plugin. It can also be unclear why certain arguments are available in the Cytoscape graphical interface and not available via cyREST.&lt;/p&gt;
  &lt;/li&gt;
&lt;/ol&gt;

&lt;h2 id=&quot;ways-to-examine-commands-available-via-api&quot;&gt;Ways to examine commands available via API&lt;/h2&gt;

&lt;p&gt;Our main goal was to create a reproducible analysis by scripting the use plugins in Cytoscape from R. We used RCy3 to create and display networks, but we also wanted to try accessing plugins used within Cytoscape via R. To do this we identified plugins that present their APIs to cyREST and thus are able to be used on the command line and by the user from R. Unfortunately, the commands available via the API are often not included in the documentation of the plugins or Cytoscape, so to find out what commands are available I needed some ways to investigate what was available. For me, with little experience in javascript, I used three different avenues that I will describe below.&lt;/p&gt;

&lt;h3 id=&quot;1-via-the-command-line-tool-in-cytoscape&quot;&gt;1) Via the command line tool in Cytoscape&lt;/h3&gt;

&lt;p&gt;Within Cytoscape, commands can be run using the command line dialog.
&lt;img src=&quot;http://blog.lunean.com/images/gsoc_posts/blog_post_2_tool-drop-down_command-line.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;This is also where we can find out about commands by using the help associated with the different plugins and functions of Cytoscape. To examine what information is available, type in &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;help&lt;/code&gt; into the command line box and press Enter (or Return).&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://blog.lunean.com/images/gsoc_posts/blog_post_2_command-line_help.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;To look specifically at a specific command you can type &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;help&lt;/code&gt; followed by the command (or plugin). If we type &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;help view&lt;/code&gt; and press Enter (or Return) here we see:&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://blog.lunean.com/images/gsoc_posts/blog_post_2_command-line_help-view.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;h3 id=&quot;2-via-your-favourite-internet-browser&quot;&gt;2) Via your favourite internet browser&lt;/h3&gt;

&lt;p&gt;Your browser can also be used to examine the different commands available via the API. The default setting for the cyREST API has Cytoscape at localhost:1234. We will need to direct ourselves to the version 1 of cyREST as well. So if we do that, we get some details about Cytoscape and the API.&lt;/p&gt;

&lt;p&gt;This is because cyREST works as a Cytoscape app that exposes the data and functions in Cytoscape via an API. The REST API is an application programming interface that uses HTTP requests to send and receive data, thus it is possible to examine what cyREST is exposing via your web browser.&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://blog.lunean.com/images/gsoc_posts/blog_post_2_chrome_api.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Side note: If we want to see a listing of the networks we have we can type:&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://blog.lunean.com/images/gsoc_posts/blog_post_2_chrome_network.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;Then to examine the possible commands available (like what we did with the command line dialogue above) we can type:&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://blog.lunean.com/images/gsoc_posts/blog_post_2_chrome_commands.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;If we want to see the commands available within a set of commands we can type:&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;http://blog.lunean.com/images/gsoc_posts/blog_post_2_chrome_commands_view.png&quot; alt=&quot;&quot; /&gt;&lt;/p&gt;

&lt;p&gt;You could indeed run commands from here, but this is not very practical and would defeat our purpose. This was just to show how to investigate the plugins and Cytoscape. We will switch to RCy3 in R to run the commands that we want to execute.&lt;/p&gt;

&lt;h3 id=&quot;3-using-rcy3&quot;&gt;3) Using RCy3&lt;/h3&gt;

&lt;p&gt;In R, I have written code that allows me to check on the commands available and the arguments available for these commands:&lt;/p&gt;

&lt;div class=&quot;language-r highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;n&quot;&gt;library&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;RCy3&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;source&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;./functions_to_add_to_RCy3/working_with_namespaces.R&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Test out the function to see what commands are available in Cytoscape&lt;/p&gt;

&lt;div class=&quot;language-r highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;n&quot;&gt;cy&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;o&quot;&gt;&amp;lt;-&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;n&quot;&gt;CytoscapeConnection&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;getCommandNames&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;cy&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;##  [1] &quot;cluster&quot;       &quot;clusterviz&quot;    &quot;command&quot;       &quot;edge&quot;         
##  [5] &quot;enrichmentmap&quot; &quot;group&quot;         &quot;layout&quot;        &quot;network&quot;      
##  [9] &quot;node&quot;          &quot;session&quot;       &quot;table&quot;         &quot;view&quot;         
## [13] &quot;vizmap&quot;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;(Please note: Your view may be different if you have different plugins installed)
See what arguments are available within Cytoscape command “view”&lt;/p&gt;

&lt;div class=&quot;language-r highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;n&quot;&gt;getCommandsWithinNamespace&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;n&quot;&gt;cy&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt;&lt;span class=&quot;w&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;view&quot;&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt;&lt;span class=&quot;w&quot;&gt;
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;## [1] &quot;create&quot;       &quot;destroy&quot;      &quot;export&quot;       &quot;fit content&quot;
## [5] &quot;fit selected&quot; &quot;get current&quot;  &quot;list&quot;         &quot;set current&quot;
## [9] &quot;update&quot;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h1 id=&quot;other-summer-activities-poster-presentation-of-gsoc-work&quot;&gt;Other summer activities: Poster presentation of GSOC work&lt;/h1&gt;

&lt;p&gt;I presented part of one of the workflows that I was working on at a scientific meeting this summer. The meeting was the Viruses of Microbes meeting in Liverpool, UK. The repository that contains the poster and the code used to generate it are &lt;a href=&quot;https://github.com/jooolia/RCy3_VOM_poster&quot;&gt;here&lt;/a&gt;. This was my first time creating and presenting a poster like this and it was a good challenge. The poster was well received and many jotted down the address for the Github repo.&lt;/p&gt;

&lt;h1 id=&quot;second-blog-post-to-come-with-workflows&quot;&gt;Second blog post to come with workflows:&lt;/h1&gt;

&lt;p&gt;Next week I will post second blog post detailing the different workflows that were created. With the help of the RCy3 developers we will be incorporating some of these workflows into RCy3.&lt;/p&gt;

&lt;h2 id=&quot;topics-within-the-forthcoming-blog-post&quot;&gt;Topics within the forthcoming blog post:&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;Enrichment Maps using Cytoscape plugin EMap&lt;/li&gt;
  &lt;li&gt;Co-occurrence network using microbial data&lt;/li&gt;
  &lt;li&gt;Using paxtoolsr to get information from Pathway Commons and display this information in Cytoscape&lt;/li&gt;
  &lt;li&gt;Using chemviz to examine the chemical properties and structures of data and creating a network based on chemical similarity&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In the meantime please feel free to check out my &lt;a href=&quot;https://github.com/jooolia/gsoc_Rcy3_vignettes/blob/master/blog_post_drafts/final_work_submission.md&quot;&gt;final work submission&lt;/a&gt; which describes the projects and provides links to the individual workflows.&lt;/p&gt;</content><author><name>Julia Gustavsen</name></author><category term="r" /><summary type="html">This summer I had the pleasure of working with the National Resource for Network Biology (NRNB as a summer intern as part of Google Summer of Code project. For my project (described more in depth in the previous blog post) I wanted to make workflows for biologists to make their analyses more straightforward by using the programming language R with the Bioconductor package RCy3.</summary></entry><entry><title type="html">Extending RCy3 Vignettes (Google Summer of Code Project)</title><link href="https://blog.lunean.com/r/2016/08/05/extending-rcy3-vignettes-google-summer-of-code-project.html" rel="alternate" type="text/html" title="Extending RCy3 Vignettes (Google Summer of Code Project)" /><published>2016-08-05T00:00:00+00:00</published><updated>2016-08-05T00:00:00+00:00</updated><id>https://blog.lunean.com/r/2016/08/05/extending-rcy3-vignettes-google-summer-of-code-project</id><content type="html" xml:base="https://blog.lunean.com/r/2016/08/05/extending-rcy3-vignettes-google-summer-of-code-project.html">&lt;p&gt;&lt;a href=&quot;http://www.cytoscape.org/&quot;&gt;Cytoscape&lt;/a&gt; is a popular open-source program for visualizing and analyzing networks (biological and otherwise).&lt;/p&gt;

&lt;p&gt;This summer &lt;a href=&quot;www.juliagustavsen.com&quot;&gt;I&lt;/a&gt; have been working on a &lt;a href=&quot;https://summerofcode.withgoogle.com/projects/#6682250145955840&quot;&gt;Google Summer of Code project&lt;/a&gt; with the &lt;a href=&quot;http://nrnb.org/&quot;&gt;National Resource for Network Biology&lt;/a&gt; that aims to make it easier for scientists to run &lt;a href=&quot;http://www.cytoscape.org/&quot;&gt;Cytoscape&lt;/a&gt; via R (using &lt;a href=&quot;https://github.com/cytoscape/cyREST&quot;&gt;CyREST&lt;/a&gt;). Cytoscape is a very powerful tool for visualizing and analyzing networks, and as scientists generate more data it can be efficient to reuse the same analytical steps on different dataset or to easily re-run analyses. The main objective of the project has been and will be to create code demonstrations of common workflows using the Bioconductor R package &lt;a href=&quot;https://bioconductor.org/packages/release/bioc/html/RCy3.html&quot;&gt;RCy3&lt;/a&gt;.&lt;/p&gt;

&lt;h2 id=&quot;description-of-the-project&quot;&gt;Description of the project&lt;/h2&gt;

&lt;p&gt;One of the main goals of this project is to extend the vignettes in RCy3 to demonstrate how some common workflows in Cytoscape can be scripted in R. RCy3 uses the &lt;a href=&quot;https://github.com/cytoscape/cyREST&quot;&gt;CyREST&lt;/a&gt; framework to send commands to Cytoscape. These vignettes will cover a range of network analysis topics.&lt;/p&gt;

&lt;p&gt;Another goal is to enable the scripting of some analytical functions in Cytoscape (using Cytoscape plugins). Plugins that are currently being developed for this workflow include &lt;a href=&quot;http://www.baderlab.org/Software/EnrichmentMap&quot;&gt;Enrichment Map&lt;/a&gt; and &lt;a href=&quot;http://www.cgl.ucsf.edu/cytoscape/clusterMaker2/clusterMaker2.shtml&quot;&gt;Clustermaker2&lt;/a&gt;.&lt;/p&gt;

&lt;h3 id=&quot;things-i-am-excited-to-do-and-learn-about&quot;&gt;Things I am excited to do and learn about:&lt;/h3&gt;
&lt;ul&gt;
  &lt;li&gt;making workflows that are flexible enough to be included in the package and flexible enough for people to use with their data.&lt;/li&gt;
  &lt;li&gt;encouraging extensibility in the RCy3 workflows and functions to make it clear how users can extend RCy3 to make it work with different Cytoscape plugins that use REST APIs.&lt;/li&gt;
  &lt;li&gt;Finding candidate datasets to be used in the vignettes to be included in RCy3.&lt;/li&gt;
  &lt;li&gt;S4 object-oriented programming: The RCy3 package is written using the S4 framework. To understand and potentially extend the package I will need to learn about the S4 framework.&lt;/li&gt;
  &lt;li&gt;Working with JSON in R.&lt;/li&gt;
  &lt;li&gt;Learning more about different types of network analyses for biological data&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;people-involved&quot;&gt;People involved&lt;/h2&gt;

&lt;h3 id=&quot;student-developer&quot;&gt;Student developer&lt;/h3&gt;

&lt;p&gt;I recently completed my PhD at the University of British Columbia in Vancouver, B.C.. My dissertation work was on the diversity and ecology of groups of marine viruses and their hosts in coastal waters of British Columbia. As part of my dissertation, I used network analysis and Cytoscape to visualize co-occurrence of the microbes in a time-series at our study site in Vancouver.&lt;/p&gt;

&lt;h4 id=&quot;summer-project-motivation&quot;&gt;Summer project motivation:&lt;/h4&gt;

&lt;p&gt;I did some network analysis as part of my PhD and am interested in learning more about networks and their analysis, working with other open source developers, facilitating analysis for other scientists, learning more about R package development and how to make a great vignette, and of course improving my R skills.&lt;/p&gt;

&lt;h3 id=&quot;mentor&quot;&gt;Mentor&lt;/h3&gt;

&lt;p&gt;Google summer of code projects are all guided by a mentor with experience in the area of the project. My mentor is &lt;a href=&quot;http://lunean.com/&quot;&gt;Augustin Luna&lt;/a&gt;, research Fellow in the Department of Biostatistics and Computational Biology, and Dana-Farber Cancer Institute at Harvard University, Boston, MA. Author of the R package &lt;a href=&quot;https://github.com/BioPAX/paxtoolsr&quot;&gt;paxtoolsr&lt;/a&gt;.&lt;/p&gt;

&lt;h2 id=&quot;in-progress&quot;&gt;In progress:&lt;/h2&gt;

&lt;ul&gt;
  &lt;li&gt;Currently making a vignette on species co-occurrence networks (food webs)&lt;/li&gt;
  &lt;li&gt;Writing functions to enable access to Cytoscape plugins via RCy3&lt;/li&gt;
  &lt;li&gt;Writing a vignette on using &lt;a href=&quot;http://www.baderlab.org/Software/EnrichmentMap&quot;&gt;EnrichmentMap&lt;/a&gt; with RCy3&lt;/li&gt;
&lt;/ul&gt;

&lt;h2 id=&quot;conclusion&quot;&gt;Conclusion&lt;/h2&gt;

&lt;p&gt;The ultimate goal of the project is to extend the vignettes in RCy3 and also to provide useful workflows for scientists using Cytoscape.&lt;/p&gt;

&lt;p&gt;Work will be done in &lt;a href=&quot;https://github.com/jooolia/gsoc_Rcy3_vignettes&quot;&gt;this Github repository&lt;/a&gt; and then vignettes and functions could be integrated into the &lt;a href=&quot;https://github.com/tmuetze/Bioconductor_RCy3_the_new_RCytoscape&quot;&gt;development version of RCy3&lt;/a&gt;.&lt;/p&gt;

&lt;h3 id=&quot;do-you-use-cytoscape-and-r-together&quot;&gt;Do you use Cytoscape and R together?&lt;/h3&gt;

&lt;p&gt;If you use Cytoscape and R, do you use them together? What would you like to see? What kind of data do you use? What would you like to do, but can’t or find challenging to do in your current analysis?&lt;/p&gt;

&lt;p&gt;If interested you can fill in &lt;a href=&quot;https://docs.google.com/forms/d/1_XsAFzIE1YQbBnLRdql2KLpYo4namn7PPdsVhX7CpD0/viewform?c=0&amp;amp;w=1&amp;amp;usp=mail_form_link&quot;&gt;this google form&lt;/a&gt; or get in touch via &lt;a href=&quot;mailto:j.gustavsen@gmail.com&quot;&gt;e-mail&lt;/a&gt; or &lt;a href=&quot;http://twitter.com/JuliaGustavsen&quot;&gt;twitter&lt;/a&gt;.&lt;/p&gt;</content><author><name>Julia Gustavsen</name></author><category term="r" /><summary type="html">Cytoscape is a popular open-source program for visualizing and analyzing networks (biological and otherwise).</summary></entry><entry><title type="html">Tips on Creating Presentations with RStudio and Webpage Embedding</title><link href="https://blog.lunean.com/r/2016/08/02/tips-on-creating-presentations-in-rstudio-and-webpage-embedding.html" rel="alternate" type="text/html" title="Tips on Creating Presentations with RStudio and Webpage Embedding" /><published>2016-08-02T00:00:00+00:00</published><updated>2016-08-02T00:00:00+00:00</updated><id>https://blog.lunean.com/r/2016/08/02/tips-on-creating-presentations-in-rstudio-and-webpage-embedding</id><content type="html" xml:base="https://blog.lunean.com/r/2016/08/02/tips-on-creating-presentations-in-rstudio-and-webpage-embedding.html">&lt;p&gt;RStudio provides functionality to &lt;a href=&quot;https://support.rstudio.com/hc/en-us/sections/200130218-R-Presentations&quot;&gt;make presentations in R&lt;/a&gt; in a way very similar to &lt;a href=&quot;http://yihui.name/knitr/&quot;&gt;knitr reports&lt;/a&gt;. Presentations produced in RStudio are dependent on the on &lt;a href=&quot;http://lab.hakim.se/reveal-js/&quot;&gt;reveal.js HTML presentation framework&lt;/a&gt;, and like knitr reports, these presentations are nice way of embedding both code chucks and have the results shown that are dynamically generated when the presentation is created. There are number of very helpful features in tools like Microsoft Powerpoint that are missing when making presentations in RStudio. A template presentation is available at &lt;a href=&quot;https://github.com/cannin/r-presentation-template&quot;&gt;this GitHub repository&lt;/a&gt; that has the features described in this post.&lt;/p&gt;

&lt;p&gt;Users are likely to need to customize the template to suit their aesthetic tastes, but it should serve as a good starting point for more advanced features from RStudio presentations.&lt;/p&gt;

&lt;h2 id=&quot;simplifying-authoring-using-css&quot;&gt;Simplifying Authoring using CSS&lt;/h2&gt;

&lt;p&gt;The tips below depend on investing sometime with &lt;a href=&quot;http://www.w3schools.com/css/css_intro.asp&quot;&gt;CSS&lt;/a&gt; to get some useful features for creating presentations with RStudio.&lt;/p&gt;

&lt;h3 id=&quot;quick-access-to-font-sizes-and-image-centering&quot;&gt;Quick Access to Font Sizes and Image Centering&lt;/h3&gt;

&lt;p&gt;A &lt;a href=&quot;https://support.rstudio.com/hc/en-us/articles/200532307-Customizing-Fonts-and-Appearance&quot;&gt;CSS stylesheet can be associated with the slide deck&lt;/a&gt; and a style can be associated with each slide. The rpres.css contains a few helpful styles, specifically the ones below:&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;# For an image only slide, center the image
class: center-img

# For overall smaller font size for the slide content
class: smaller
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h3 id=&quot;simplified-positioning-using-css&quot;&gt;Simplified Positioning using CSS&lt;/h3&gt;

&lt;p&gt;debug.R contains code to display vertical and horizontal grid lines on the slide every 10% of the slide; this is done through HTML elements and CSS. To activate these grid lines, the content must be sourced in using the the following commands placed at the top of the rpres.Rpres file:&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;`r if(file.exists(&quot;debug.R&quot;)) { source(&quot;debug.R&quot;); I(grid) }`
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;This works by placing the necessary HTML elements into the grid variable and them then directly writing this content into the slide using I().&lt;/p&gt;

&lt;h3 id=&quot;highlight-elements-in-images&quot;&gt;Highlight Elements in Images&lt;/h3&gt;

&lt;p&gt;Sometimes it is useful to put a circle or square over some portion of an image to highlight some important part. An &lt;a href=&quot;http://www.w3schools.com/tags/tag_div.asp&quot;&gt;HTML div&lt;/a&gt; is used to place either box or a ellipse on top of the image. The type of highlight is described by the class attribute, and the height, width, and position are described in the style attribute; the positioning of which is made easier with debug.R.&lt;/p&gt;

&lt;p&gt;The CSS code also allows filling in the shape to allow writing a label as shown in the ellipse&lt;/p&gt;

&lt;div class=&quot;language-html highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;RStudio Overview
===
class: center-img

&lt;span class=&quot;nt&quot;&gt;&amp;lt;img&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;src=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;img/rstudio.png&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;height=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;600px&quot;&lt;/span&gt; &lt;span class=&quot;nt&quot;&gt;/&amp;gt;&lt;/span&gt;

&lt;span class=&quot;nt&quot;&gt;&amp;lt;div&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;class=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;box&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;style=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;height: 10%; width: 20%; top: 30%; left: 20%&quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&lt;/span&gt;
  &lt;span class=&quot;nt&quot;&gt;&amp;lt;span&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;class=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;filled&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;style=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;font-size: 2rem !important&quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&lt;/span&gt;Editor&lt;span class=&quot;nt&quot;&gt;&amp;lt;span&amp;gt;&lt;/span&gt;
&lt;span class=&quot;nt&quot;&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;

&lt;span class=&quot;nt&quot;&gt;&amp;lt;div&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;class=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;ellipse&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;style=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;height: 10%; width: 20%; top: 30%; left: 20%&quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Below is a screenshot featuring both debugging grid lines for slides and CSS-based highlights:&lt;/p&gt;

&lt;p&gt;&lt;img src=&quot;https://blog.lunean.com/images/tips_presentation_rstudio_highlight.png&quot; alt=&quot;Screenshot Showing Grid Lines and Highlights on RStudio knitr Presentations&quot; class=&quot;full&quot; /&gt;&lt;/p&gt;

&lt;h2 id=&quot;embedding-presentations-in-webpages&quot;&gt;Embedding Presentations in Webpages&lt;/h2&gt;

&lt;p&gt;Embedding presentations in webpages, like blog posts, is nice since it allows readers to browse presentation content without visiting another page. To get an effect similar to &lt;a href=&quot;http://www.slideshare.net/&quot;&gt;SlideShare&lt;/a&gt;, is relatively simple using &lt;a href=&quot;http://getbootstrap.com/&quot;&gt;Bootstrap&lt;/a&gt; and &lt;a href=&quot;https://github.com/sindresorhus/screenfull.js/&quot;&gt;screenfull.js&lt;/a&gt;; Bootstrap provides the HTML element (i.e. a panel) where the presentation will be embedded and screenfull.js provides functionality for a clickable button that will maximize the presentation to full screen.&lt;/p&gt;

&lt;p&gt;The necessary HTML is in “embed” folder of the template repository. The code below shows the important code elements to embed the presentation; it also provides link to a PDF version of the presentation (instructions on producing a PDF version are later in this post).&lt;/p&gt;

&lt;div class=&quot;language-html highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;nt&quot;&gt;&amp;lt;script &lt;/span&gt;&lt;span class=&quot;na&quot;&gt;type=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;text/javascript&quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&lt;/span&gt;
&lt;span class=&quot;nx&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;document&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;ready&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;kd&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;()&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
  &lt;span class=&quot;nx&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;dl&quot;&gt;'&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;#fs-overview-link&lt;/span&gt;&lt;span class=&quot;dl&quot;&gt;'&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;).&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;click&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;kd&quot;&gt;function&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;()&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
    &lt;span class=&quot;k&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;screenfull&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;enabled&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
      &lt;span class=&quot;nx&quot;&gt;screenfull&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;request&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;$&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;dl&quot;&gt;'&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;#fs-overview-target&lt;/span&gt;&lt;span class=&quot;dl&quot;&gt;'&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)[&lt;/span&gt;&lt;span class=&quot;mi&quot;&gt;0&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;]);&lt;/span&gt;
    &lt;span class=&quot;p&quot;&gt;}&lt;/span&gt;
  &lt;span class=&quot;p&quot;&gt;});&lt;/span&gt;
&lt;span class=&quot;p&quot;&gt;});&lt;/span&gt;
&lt;span class=&quot;nt&quot;&gt;&amp;lt;/script&amp;gt;&lt;/span&gt;
  &lt;span class=&quot;nt&quot;&gt;&amp;lt;div&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;class=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;panel panel-default&quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&lt;/span&gt;
      &lt;span class=&quot;nt&quot;&gt;&amp;lt;div&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;class=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;panel-heading&quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&lt;/span&gt;
          &lt;span class=&quot;nt&quot;&gt;&amp;lt;h2&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;class=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;panel-title&quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&lt;/span&gt;
              R Basics (&lt;span class=&quot;nt&quot;&gt;&amp;lt;a&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;href=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;http://slides.lunean.com/r-presentation-template/rpres.pdf&quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&lt;/span&gt;PDF&lt;span class=&quot;nt&quot;&gt;&amp;lt;/a&amp;gt;&lt;/span&gt;) &lt;span class=&quot;nt&quot;&gt;&amp;lt;a&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;id=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;fs-overview-link&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;class=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;pull-right&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;href=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;#&quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&amp;lt;i&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;class=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;fa fa-arrows-alt&quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&amp;lt;/i&amp;gt;&amp;lt;/a&amp;gt;&lt;/span&gt;
          &lt;span class=&quot;nt&quot;&gt;&amp;lt;/h2&amp;gt;&lt;/span&gt;
      &lt;span class=&quot;nt&quot;&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
      &lt;span class=&quot;nt&quot;&gt;&amp;lt;div&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;class=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;panel-body&quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&lt;/span&gt;
          &lt;span class=&quot;nt&quot;&gt;&amp;lt;div&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;class=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;embed-responsive embed-responsive-4by3&quot;&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&lt;/span&gt;
              &lt;span class=&quot;nt&quot;&gt;&amp;lt;iframe&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;id=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;fs-overview-target&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;src=&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;http://slides.lunean.com/r-presentation-template/rpres.html&quot;&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;allowfullscreen&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;seamless&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;&amp;gt;&lt;/span&gt;
                  &lt;span class=&quot;nt&quot;&gt;&amp;lt;p&amp;gt;&lt;/span&gt;Your browser does not support iframes.&lt;span class=&quot;nt&quot;&gt;&amp;lt;/p&amp;gt;&lt;/span&gt;
              &lt;span class=&quot;nt&quot;&gt;&amp;lt;/iframe&amp;gt;&lt;/span&gt;
              &lt;span class=&quot;c&quot;&gt;&amp;lt;!--&amp;lt;iframe src=&quot;http://www.w3schools.com&quot;&amp;gt;--&amp;gt;&lt;/span&gt;
                  &lt;span class=&quot;c&quot;&gt;&amp;lt;!--&amp;lt;p&amp;gt;Your browser does not support iframes.&amp;lt;/p&amp;gt;--&amp;gt;&lt;/span&gt;
              &lt;span class=&quot;c&quot;&gt;&amp;lt;!--&amp;lt;/iframe&amp;gt;--&amp;gt;&lt;/span&gt;
          &lt;span class=&quot;nt&quot;&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
      &lt;span class=&quot;nt&quot;&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
  &lt;span class=&quot;nt&quot;&gt;&amp;lt;/div&amp;gt;&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2 id=&quot;embedding-google-analytics-into-presentations&quot;&gt;Embedding Google Analytics into Presentations&lt;/h2&gt;

&lt;p&gt;head.R contains typical code for Google Analytics. Additionally, it provides an example for triggering events by listening to events that occur in the presentation. In the example, an event is sent to Google Analytics whenever a user changes slides this helps get a sense of engagement of users in the presentation content.&lt;/p&gt;

&lt;p&gt;Similar to debug.R, the content of head.R can be added into the presentation by adding this line at the top:&lt;/p&gt;

&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;`r if(file.exists(&quot;head.R&quot;)) { source(&quot;head.R&quot;); I(head) }`
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Code for tracking slide changes:&lt;/p&gt;

&lt;div class=&quot;language-javascript highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;nx&quot;&gt;Reveal&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;addEventListener&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;dl&quot;&gt;'&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;slidechanged&lt;/span&gt;&lt;span class=&quot;dl&quot;&gt;'&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;kd&quot;&gt;function&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;event&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;)&lt;/span&gt; &lt;span class=&quot;p&quot;&gt;{&lt;/span&gt;
  &lt;span class=&quot;nx&quot;&gt;console&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;log&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;dl&quot;&gt;'&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;Slide Index: &lt;/span&gt;&lt;span class=&quot;dl&quot;&gt;'&lt;/span&gt; &lt;span class=&quot;o&quot;&gt;+&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;event&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;indexh&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
  &lt;span class=&quot;nx&quot;&gt;ga&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;(&lt;/span&gt;&lt;span class=&quot;dl&quot;&gt;'&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;send&lt;/span&gt;&lt;span class=&quot;dl&quot;&gt;'&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;dl&quot;&gt;'&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;event&lt;/span&gt;&lt;span class=&quot;dl&quot;&gt;'&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;dl&quot;&gt;'&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;Slide Index&lt;/span&gt;&lt;span class=&quot;dl&quot;&gt;'&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;dl&quot;&gt;'&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;click&lt;/span&gt;&lt;span class=&quot;dl&quot;&gt;'&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;,&lt;/span&gt; &lt;span class=&quot;nx&quot;&gt;event&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;.&lt;/span&gt;&lt;span class=&quot;nx&quot;&gt;indexh&lt;/span&gt;&lt;span class=&quot;p&quot;&gt;);&lt;/span&gt;
&lt;span class=&quot;p&quot;&gt;});&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2 id=&quot;generating-pdf-versions-of-presentations&quot;&gt;Generating PDF Versions of Presentations&lt;/h2&gt;

&lt;p&gt;PDF versions of presentations are useful since sometimes one encounters a venue that lacks software support (e.g. old browsers), but typically static PDF files are not an issue. Also, some users may want to a hard copy of presentations for taking notes or to look at offline. There is no quick button in RStudio for creating PDF versions of slides. Even though Reveal.js provides a print stylesheet for printing to PDF slides the experience can be a pain because the results are less than optimal. Thankfully, there is a tool called &lt;a href=&quot;https://github.com/astefanutti/decktape&quot;&gt;Decktape&lt;/a&gt; that works much better.&lt;/p&gt;

&lt;p&gt;With &lt;a href=&quot;https://github.com/astefanutti/decktape&quot;&gt;Decktape&lt;/a&gt; installed, there are two steps:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Serve your presentation on a web server&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;There are a lot of ways to do this. Below is a way that depends on &lt;a href=&quot;https://nodejs.org/en/&quot;&gt;NodeJS&lt;/a&gt; for a quick webserver installed in the &lt;a href=&quot;https://hub.docker.com/r/cannin/nodejs-http-server/&quot;&gt;cannin/nodejs-http-server&lt;/a&gt; container made with &lt;a href=&quot;https://www.docker.com/&quot;&gt;Docker&lt;/a&gt; to simplify its usage without worrying about installing it on the locally.&lt;/p&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;docker run &lt;span class=&quot;nt&quot;&gt;--name&lt;/span&gt; slides &lt;span class=&quot;nt&quot;&gt;-p&lt;/span&gt; 8080:8080 &lt;span class=&quot;nt&quot;&gt;-v&lt;/span&gt; &lt;span class=&quot;si&quot;&gt;$(&lt;/span&gt;&lt;span class=&quot;nb&quot;&gt;pwd&lt;/span&gt;&lt;span class=&quot;si&quot;&gt;)&lt;/span&gt;:/site &lt;span class=&quot;nt&quot;&gt;-w&lt;/span&gt; /site &lt;span class=&quot;nt&quot;&gt;-t&lt;/span&gt; cannin/nodejs-http-server:0.10.25
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Note: $(pwd) is the current directory.&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Run Decktape&lt;/li&gt;
&lt;/ol&gt;

&lt;div class=&quot;language-sh highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;./bin/phantomjs ./decktape.js reveal http://localhost:8080/rpres.html rpres.pdf
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h2 id=&quot;embedded-template-presentation&quot;&gt;Embedded Template Presentation&lt;/h2&gt;

&lt;p&gt;Template presentation embedded with debugging turned on.&lt;/p&gt;

&lt;p&gt;FIXME: RStudio Presentation Tips: http://slides.lunean.com/r-presentation-template/rpre&lt;/p&gt;</content><author><name>Augustin Luna</name></author><category term="r" /><summary type="html">RStudio provides functionality to make presentations in R in a way very similar to knitr reports. Presentations produced in RStudio are dependent on the on reveal.js HTML presentation framework, and like knitr reports, these presentations are nice way of embedding both code chucks and have the results shown that are dynamically generated when the presentation is created. There are number of very helpful features in tools like Microsoft Powerpoint that are missing when making presentations in RStudio. A template presentation is available at this GitHub repository that has the features described in this post.</summary></entry><entry><title type="html">CBioPortal and cgdsr: An Introduction</title><link href="https://blog.lunean.com/r/2016/02/11/cbioportal-tutorial.html" rel="alternate" type="text/html" title="CBioPortal and cgdsr: An Introduction" /><published>2016-02-11T00:00:00+00:00</published><updated>2016-02-11T00:00:00+00:00</updated><id>https://blog.lunean.com/r/2016/02/11/cbioportal-tutorial</id><content type="html" xml:base="https://blog.lunean.com/r/2016/02/11/cbioportal-tutorial.html">&lt;p&gt;The &lt;a href=&quot;http://cbioportal.org/&quot;&gt;cBio Cancer Genomics Portal&lt;/a&gt; is an open-access resource for interactive exploration of multidimensional cancer genomics data sets, currently providing access to data from more than 100 cancer studies. The cBio Cancer Genomics Portal significantly lowers the barriers between complex genomic data and cancer researchers who want rapid, intuitive, and high-quality access to molecular profiles and clinical attributes from large-scale cancer genomics projects and empowers researchers to translate these rich data sets into biologic insights and clinical applications.&lt;/p&gt;

&lt;p&gt;The slides below preview many of the website features found on the CBioPortal website, including view genomic alterations as &lt;a href=&quot;http://www.cbioportal.org/faq.jsp#what-are-oncoprints&quot;&gt;oncoprints&lt;/a&gt; (a compact way of viewing genomic alterations across a large number of study patients), viewing study summaries, and accessing details patient data, such as, histology images and pathology reports. Additionally, the slides provide introductory material for the usage of CBioPortal from R using the cgdsr package. cgdsr simplifies access to the &lt;a href=&quot;http://www.cbioportal.org/web_api.jsp&quot;&gt;web application programming interface (API)&lt;/a&gt; provided by the project. This is a REST-based API, that allows software to query the database using parameters appended onto the URL. Using the cgdsr package mirrors closely the way a user would manually interact with the CBioPortal website by searching and selecting the cancer studies of interest, the genetic profiles for a given study, and the case sets for the cancer study.&lt;/p&gt;

&lt;p&gt;Slides: cBioPortal: &lt;a href=&quot;http://slides.lunean.com/uspWorkshop/cbioportal.pdf&quot;&gt;http://slides.lunean.com/uspWorkshop/cbioportal.pdf&lt;/a&gt;&lt;/p&gt;</content><author><name>Augustin Luna</name></author><category term="r" /><summary type="html">The cBio Cancer Genomics Portal is an open-access resource for interactive exploration of multidimensional cancer genomics data sets, currently providing access to data from more than 100 cancer studies. The cBio Cancer Genomics Portal significantly lowers the barriers between complex genomic data and cancer researchers who want rapid, intuitive, and high-quality access to molecular profiles and clinical attributes from large-scale cancer genomics projects and empowers researchers to translate these rich data sets into biologic insights and clinical applications.</summary></entry><entry><title type="html">Pathway Commons and paxtoolsr: An Introduction</title><link href="https://blog.lunean.com/r/2016/02/08/introduction-to-pathway-commons-and-paxtoolsr.html" rel="alternate" type="text/html" title="Pathway Commons and paxtoolsr: An Introduction" /><published>2016-02-08T00:00:00+00:00</published><updated>2016-02-08T00:00:00+00:00</updated><id>https://blog.lunean.com/r/2016/02/08/introduction-to-pathway-commons-and-paxtoolsr</id><content type="html" xml:base="https://blog.lunean.com/r/2016/02/08/introduction-to-pathway-commons-and-paxtoolsr.html">&lt;p&gt;&lt;a href=&quot;http://www.pathwaycommons.org/&quot;&gt;Pathway Commons&lt;/a&gt; is an aggregation of public pathway databases and provides infrastructure for querying this rich dataset. Pathway Commons databases include: BIND, BioGRID, CORUM, CTD, DIP, DrugBank, HPRD, HumanCyc, IntAct, KEGG, MirTarBase, Panther, PhosphoSitePlus, Reactome, RECON, TRANSFAC. &lt;a href=&quot;https://bioconductor.org/packages/release/bioc/html/paxtoolsr.html&quot;&gt;paxtoolsr&lt;/a&gt; is a package that builds on the strengths of Pathway Commons and its native &lt;a href=&quot;http://biopax.org/&quot;&gt;BioPAX&lt;/a&gt; format to provide a set of R functions for interacting with BioPAX OWL files using Paxtools and the querying Pathway Commons (PC) molecular interaction database that are hosted by the Computational Biology Center at Memorial Sloan-Kettering Cancer Center (MSKCC).&lt;/p&gt;

&lt;p&gt;The slides below give a basic introduction to the &lt;a href=&quot;http://pathwaycommons.org/&quot;&gt;Pathway Commons&lt;/a&gt; database, including information about the aggregated databases, the number of the interactions in Pathway Commons, and the various file formats (e.g. BioPAX and gene sets as Gene Matrix Transposed (.gmt)) that are provided by Pathway Commons. It also describes how the rich content of these pathway databases is simplified into the Simple Interaction Format that is suitable for many research problems. Additionally, in provides a simple example on how to use the Pathway Commons data to conduct an integrative gene set enrichment analysis with cancer cell line data provided by the &lt;a href=&quot;/r/scitech/2016/01/18/introduction-to-cellminer-and-rcellminer.html&quot;&gt;CellMiner and the rcellminer R package&lt;/a&gt;. The example shows how to use a hypergeometric test to perform the enrichment analysis and then perform a multiple testing correction using the widely used Benjamini Hochberg False Discovery Rate (FDR) method. The elemental steps of this analysis are covered in the &lt;a href=&quot;/r/2016/01/18/introduction-to-statistical-methods-in-r.html&quot;&gt;Introduction to Statistical Methods in R&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Slides: Pathway Commons: &lt;a href=&quot;http://slides.lunean.com/uspWorkshop/pathwayCommons.pdf&quot;&gt;http://slides.lunean.com/uspWorkshop/pathwayCommons.pdf&lt;/a&gt;&lt;/p&gt;</content><author><name>Augustin Luna</name></author><category term="r" /><summary type="html">Pathway Commons is an aggregation of public pathway databases and provides infrastructure for querying this rich dataset. Pathway Commons databases include: BIND, BioGRID, CORUM, CTD, DIP, DrugBank, HPRD, HumanCyc, IntAct, KEGG, MirTarBase, Panther, PhosphoSitePlus, Reactome, RECON, TRANSFAC. paxtoolsr is a package that builds on the strengths of Pathway Commons and its native BioPAX format to provide a set of R functions for interacting with BioPAX OWL files using Paxtools and the querying Pathway Commons (PC) molecular interaction database that are hosted by the Computational Biology Center at Memorial Sloan-Kettering Cancer Center (MSKCC).</summary></entry><entry><title type="html">Introduction to R Shiny Web Applications</title><link href="https://blog.lunean.com/r/2016/01/18/introduction-r-shiny.html" rel="alternate" type="text/html" title="Introduction to R Shiny Web Applications" /><published>2016-01-18T00:00:00+00:00</published><updated>2016-01-18T00:00:00+00:00</updated><id>https://blog.lunean.com/r/2016/01/18/introduction-r-shiny</id><content type="html" xml:base="https://blog.lunean.com/r/2016/01/18/introduction-r-shiny.html">&lt;p&gt;Shiny is a web framework for R developers. Shiny allows users to develop websites that help present their analyses to users by allowing the analyses to be interactive through a web-based interfaces. Shiny web-interfaces are programmed in R without the need to develop anything in HTML, CSS, or Javascript, although Shiny is flexible enough to incorporate custom HTML, CSS, or Javascript if the user desires (to develop customized visualizations for instance). Most components of modern websites are available directly from Shiny. The presentation covers the basics of using Shiny while providing information on R packages that can help enhance Shiny websites with additional interactive features, such as interactive plots with tooltips.&lt;/p&gt;

&lt;p&gt;Slides: Shiny: &lt;a href=&quot;http://slides.lunean.com/uspWorkshop/shiny.pdf&quot;&gt;http://slides.lunean.com/uspWorkshop/shiny.pdf&lt;/a&gt;&lt;/p&gt;</content><author><name>Augustin Luna</name></author><category term="r" /><summary type="html">Shiny is a web framework for R developers. Shiny allows users to develop websites that help present their analyses to users by allowing the analyses to be interactive through a web-based interfaces. Shiny web-interfaces are programmed in R without the need to develop anything in HTML, CSS, or Javascript, although Shiny is flexible enough to incorporate custom HTML, CSS, or Javascript if the user desires (to develop customized visualizations for instance). Most components of modern websites are available directly from Shiny. The presentation covers the basics of using Shiny while providing information on R packages that can help enhance Shiny websites with additional interactive features, such as interactive plots with tooltips.</summary></entry><entry><title type="html">Introduction to CellMiner and rcellminer</title><link href="https://blog.lunean.com/r/scitech/2016/01/18/introduction-to-cellminer-and-rcellminer.html" rel="alternate" type="text/html" title="Introduction to CellMiner and rcellminer" /><published>2016-01-18T00:00:00+00:00</published><updated>2016-01-18T00:00:00+00:00</updated><id>https://blog.lunean.com/r/scitech/2016/01/18/introduction-to-cellminer-and-rcellminer</id><content type="html" xml:base="https://blog.lunean.com/r/scitech/2016/01/18/introduction-to-cellminer-and-rcellminer.html">&lt;p&gt;The NCI-60 cancer cell line panel has been used over the course of several decades as an anti-cancer drug screen. This panel was developed as part of the &lt;a href=&quot;http://dtp.nci.nih.gov/&quot;&gt;Developmental Therapeutics Program (DTP)&lt;/a&gt; of the U.S. National Cancer Institute (NCI). Thousands of compounds have been tested on the NCI-60, which have been extensively characterized by many platforms for gene and protein expression, copy number, mutation, and others. The purpose of the &lt;a href=&quot;http://discover.nci.nih.gov/cellminer&quot;&gt;CellMiner&lt;/a&gt; project has been to integrate data from multiple platforms used to analyze the NCI-60 and to provide a powerful suite of tools for exploration of NCI-60 data.&lt;/p&gt;

&lt;p&gt;The CellMiner project makes much of its work transparent in the community by providing data downloads for the datasets used by the project. The &lt;a href=&quot;https://www.bioconductor.org/packages/release/bioc/html/rcellminer.html&quot;&gt;rcellminer R package&lt;/a&gt; adds to this effort by providing additional functionality to help R users access the CellMiner data, including both NCI-60 molecular profiling and drug response data. The package allows programmatic access to CellMiner’s gene and protein expression, copy number, whole exome mutations, as well as activity data for ∼21K compounds, with information on their structure, mechanism of action and repeat screens. In addition to the provided data, R functions simplify the visualization of compound structures, drug compound activity patterns and molecular feature profile. Lastly, several web applications have been embedded into the rcellminer R package that allow interactive data exploration.&lt;/p&gt;

&lt;p&gt;The presentation below gives a brief overview of both the CellMiner and rcellminer. One introductory topic covered in the presentation how users can use rcellminer to run a “pattern comparison” analysis to quickly identify genes that by gene expression, copy number alterations, etc. and/or compounds screened on the NCI-60 that significantly correlate with a user-defined pattern of interest over the NCI-60 (e.g. the presence of drug activity only in renal cell lines). The presentation also provides links to additional &lt;a href=&quot;https://www.bioconductor.org/packages/release/bioc/vignettes/rcellminer/inst/doc/rcellminerUsage.html&quot;&gt;rcellminer tutorial material&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Slides: CellMiner: &lt;a href=&quot;http://slides.lunean.com/uspWorkshop/cellminer.pdf&quot;&gt;http://slides.lunean.com/uspWorkshop/cellminer.pdf&lt;/a&gt;&lt;/p&gt;</content><author><name>Augustin Luna</name></author><category term="r" /><category term="scitech" /><summary type="html">The NCI-60 cancer cell line panel has been used over the course of several decades as an anti-cancer drug screen. This panel was developed as part of the Developmental Therapeutics Program (DTP) of the U.S. National Cancer Institute (NCI). Thousands of compounds have been tested on the NCI-60, which have been extensively characterized by many platforms for gene and protein expression, copy number, mutation, and others. The purpose of the CellMiner project has been to integrate data from multiple platforms used to analyze the NCI-60 and to provide a powerful suite of tools for exploration of NCI-60 data.</summary></entry><entry><title type="html">Introduction to R</title><link href="https://blog.lunean.com/r/2016/01/18/introduction-to-r.html" rel="alternate" type="text/html" title="Introduction to R" /><published>2016-01-18T00:00:00+00:00</published><updated>2016-01-18T00:00:00+00:00</updated><id>https://blog.lunean.com/r/2016/01/18/introduction-to-r</id><content type="html" xml:base="https://blog.lunean.com/r/2016/01/18/introduction-to-r.html">&lt;p&gt;R is a programming language developed by data analysts for data analysts. It offers many features that make a powerful tool for data exploration. Some basic features need to be understood to begin programming in R. The following presentation covers some of these features including working with variables, vectors and data.frames. It also covers reading and writing data from/to files, plotting and installing R packages (and getting help for the packages.&lt;/p&gt;

&lt;p&gt;Slides: Using R: &lt;a href=&quot;http://slides.lunean.com/uspWorkshop/usingR.pdf&quot;&gt;http://slides.lunean.com/uspWorkshop/usingR.pdf&lt;/a&gt;&lt;/p&gt;</content><author><name>Augustin Luna</name></author><category term="r" /><summary type="html">R is a programming language developed by data analysts for data analysts. It offers many features that make a powerful tool for data exploration. Some basic features need to be understood to begin programming in R. The following presentation covers some of these features including working with variables, vectors and data.frames. It also covers reading and writing data from/to files, plotting and installing R packages (and getting help for the packages.</summary></entry><entry><title type="html">Introduction to Statistical Methods in R</title><link href="https://blog.lunean.com/r/2016/01/18/introduction-to-statistical-methods-in-r.html" rel="alternate" type="text/html" title="Introduction to Statistical Methods in R" /><published>2016-01-18T00:00:00+00:00</published><updated>2016-01-18T00:00:00+00:00</updated><id>https://blog.lunean.com/r/2016/01/18/introduction-to-statistical-methods-in-r</id><content type="html" xml:base="https://blog.lunean.com/r/2016/01/18/introduction-to-statistical-methods-in-r.html">&lt;p&gt;Data analyses are the product of many different tasks, and statistical methods are one key aspect of any data analysis. There is a common workflow in the related areas of informatics, data mining, data science, machine learning, and statistics. The workflow tasks include data preparation, the development of predictive mathematical models, and the interpretation and preparation of analysis results (including the development of visualizations to communicate findings).&lt;/p&gt;

&lt;p&gt;The presentation provides information on the last two steps of this workflow and reproducible code examples and presents a walk-through of many common statistical methods (including regression, clustering (e.g. K-means and hierarchical), and dimensionality reduction (e.g. principal component analysis (PCA)) used to explore data with examples in R.&lt;/p&gt;

&lt;p&gt;Novice users are shown how to navigate the resulting R object to extract specific elements of interest, such as correlation p-values, regression coefficients, etc. The presentation additionally tries to tackle of some of the key concerns about these introductory methods by providing guidance on the interpretation of analyses results, such as understanding the approximately 10 values returned in a simple linear regression; the importance of and how to &lt;a href=&quot;http://bioconductor.org/packages/release/bioc/html/impute.html&quot;&gt;deal with missing values through imputation&lt;/a&gt; in real world problems; determining the quality of clustering results; and understanding the data transformations that take place in dimension reduction methods. Also provided is information about more sophisticated methodologies, such as regularized regression methods: LASSO, Ridge, and Elastic Net regression, and packages to make use of these more advanced methods in R, such as &lt;a href=&quot;https://cran.r-project.org/web/packages/glmnet/index.html&quot;&gt;glmnet for regularized regression&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Usage of these statistical methods for modeling can help users to understand their data sets, and these methodologies can be coupled with other aspects of &lt;a href=&quot;http://blog.lunean.com/2016/01/17/introduction-to-r-and-rstudio/&quot;&gt;R and RStudio&lt;/a&gt; to &lt;a href=&quot;http://blog.lunean.com/2016/01/18/introduction-r-shiny/&quot;&gt;develop interactive analyses using the Shiny R package&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Slides: Statistical Methods: &lt;a href=&quot;http://slides.lunean.com/uspWorkshop/statisticalMethods.pdf&quot;&gt;http://slides.lunean.com/uspWorkshop/statisticalMethods.pdf&lt;/a&gt;&lt;/p&gt;</content><author><name>Augustin Luna</name></author><category term="r" /><summary type="html">Data analyses are the product of many different tasks, and statistical methods are one key aspect of any data analysis. There is a common workflow in the related areas of informatics, data mining, data science, machine learning, and statistics. The workflow tasks include data preparation, the development of predictive mathematical models, and the interpretation and preparation of analysis results (including the development of visualizations to communicate findings).</summary></entry><entry><title type="html">Installing R and RStudio</title><link href="https://blog.lunean.com/r/2016/01/17/introduction-to-r-and-rstudio.html" rel="alternate" type="text/html" title="Installing R and RStudio" /><published>2016-01-17T00:00:00+00:00</published><updated>2016-01-17T00:00:00+00:00</updated><id>https://blog.lunean.com/r/2016/01/17/introduction-to-r-and-rstudio</id><content type="html" xml:base="https://blog.lunean.com/r/2016/01/17/introduction-to-r-and-rstudio.html">&lt;p&gt;R is a powerful language and environment for statistics and scientific graphics. Some of the main advantages of R is that is free/open-source and users can find a lot of help online. RStudio provides free interface to R that has an organized layout and many extra options for R users. The slides below give an overview to the R language, and they provide instructions on downloading and installing R and RStudio, as well as, showing some of the main features of RStudio.&lt;/p&gt;

&lt;p&gt;Included in these slides are links to YouTube videos, which &lt;a href=&quot;https://www.youtube.com/user/canninl&quot;&gt;cover R and RStudio installation most operating systems&lt;/a&gt;, including: Windows, Mac OSX, and Ubuntu Linux. Furthermore, the videos cover how to install and configure Java for R so that users can make use of the rJava package, which is used by many R packages; rJava allows package developers to make use of existing software written in Java that can oftentimes be faster than code written in R. Proper installation of rJava requires the &lt;a href=&quot;http://java.com/en/download/manual.jsp&quot;&gt;manual installation of the 64-bit version Java&lt;/a&gt;. By default, the &lt;a href=&quot;http://www.java.com/en/download/&quot;&gt;main Java download page&lt;/a&gt; gives users a 32-bit version of Java that will not work.&lt;/p&gt;

&lt;p&gt;After installing R, beginner users should read this &lt;a href=&quot;/r/2016/01/18/introduction-to-r.html&quot;&gt;Introduction to R&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Slides: Install R: &lt;a href=&quot;http://slides.lunean.com/uspWorkshop/installR.pdf&quot;&gt;http://slides.lunean.com/uspWorkshop/installR.pdf&lt;/a&gt;&lt;/p&gt;</content><author><name>Augustin Luna</name></author><category term="r" /><summary type="html">R is a powerful language and environment for statistics and scientific graphics. Some of the main advantages of R is that is free/open-source and users can find a lot of help online. RStudio provides free interface to R that has an organized layout and many extra options for R users. The slides below give an overview to the R language, and they provide instructions on downloading and installing R and RStudio, as well as, showing some of the main features of RStudio.</summary></entry></feed>