Commit ca46083a authored by Arnaud Legrand's avatar Arnaud Legrand

Regenerate HTML. (Propagate to FUN)

parent fac29a0a
......@@ -3,33 +3,34 @@
<h2>Table of Contents</h2>
<div id="text-table-of-contents">
<ul style="margin:0 0;">
<li style="margin-bottom:0;"><a href="#org2612284">Additional references</a>
<li style="margin-bottom:0;"><a href="#org0d4a0e8">Additional references</a>
<ul style="margin:0 0;">
<li style="margin-bottom:0;"><a href="#org6dd38af">"Thoughts" on language/software stability</a></li>
<li style="margin-bottom:0;"><a href="#orgdcd752c">Controlling your software environment</a></li>
<li style="margin-bottom:0;"><a href="#orgade769d">Preservation/Archiving</a></li>
<li style="margin-bottom:0;"><a href="#org2c58237">Workflows</a></li>
<li style="margin-bottom:0;"><a href="#org5e60f39">Numerical and statistical issues</a></li>
<li style="margin-bottom:0;"><a href="#orgf8363e1">Publication practices</a></li>
<li style="margin-bottom:0;"><a href="#org9cba5c9">Experimentation</a></li>
<li style="margin-bottom:0;"><a href="#orgc4f6c50">"Thoughts" on language/software stability</a></li>
<li style="margin-bottom:0;"><a href="#orgabfd56a">Controlling your software environment</a></li>
<li style="margin-bottom:0;"><a href="#orgf56170d">Preservation/Archiving</a></li>
<li style="margin-bottom:0;"><a href="#org476ea90">Workflows</a></li>
<li style="margin-bottom:0;"><a href="#orgdacce8f">Numerical and statistical issues</a></li>
<li style="margin-bottom:0;"><a href="#org91673e7">Publication practices</a></li>
<li style="margin-bottom:0;"><a href="#org9f7c676">Experimentation</a></li>
</ul>
</li>
<li style="margin-bottom:0;"><a href="#org55a5ab5">Tracking environment information</a>
<li style="margin-bottom:0;"><a href="#orgbef6611">Tracking environment information</a>
<ul style="margin:0 0;">
<li style="margin-bottom:0;"><a href="#orgf3b1e93">Getting information about your Git repository</a></li>
<li style="margin-bottom:0;"><a href="#org6d7f695">Getting information about Python(3) libraries</a>
<li style="margin-bottom:0;"><a href="#org9ef50b0">Getting information about your Git repository</a></li>
<li style="margin-bottom:0;"><a href="#orgc1cd356">Getting information about Python(3) libraries</a>
<ul style="margin:0 0;">
<li style="margin-bottom:0;"><a href="#org546bbcf">Getting the list of installed packages and their version</a></li>
<li style="margin-bottom:0;"><a href="#org88ff00d">How to list imported modules?</a></li>
<li style="margin-bottom:0;"><a href="#org8d6c94f">Saving and restoring an environment with pip</a></li>
<li style="margin-bottom:0;"><a href="#org1fdfaf0">Installing a new package or a specific version</a></li>
<li style="margin-bottom:0;"><a href="#org6a455a3">Getting information about your system</a></li>
<li style="margin-bottom:0;"><a href="#org96c1188">Getting the list of installed packages and their version</a></li>
<li style="margin-bottom:0;"><a href="#org46d5140">How to list imported modules?</a></li>
<li style="margin-bottom:0;"><a href="#org1127887">Saving and restoring an environment with pip</a></li>
<li style="margin-bottom:0;"><a href="#org4522704">Installing a new package or a specific version</a></li>
</ul>
</li>
<li style="margin-bottom:0;"><a href="#org71f6171">Getting information about R libraries</a>
<li style="margin-bottom:0;"><a href="#orgd73af89">Getting information about R libraries</a>
<ul style="margin:0 0;">
<li style="margin-bottom:0;"><a href="#org21ba69e">Getting the list imported modules and their version</a></li>
<li style="margin-bottom:0;"><a href="#orgdbb0731">Getting the list of installed packages and their version</a></li>
<li style="margin-bottom:0;"><a href="#org1110f15">Installing a new package or a specific version</a></li>
<li style="margin-bottom:0;"><a href="#org549563f">Getting the list imported modules and their version</a></li>
<li style="margin-bottom:0;"><a href="#orgafe4f90">Getting the list of installed packages and their version</a></li>
<li style="margin-bottom:0;"><a href="#org9e3380b">Installing a new package or a specific version</a></li>
</ul>
</li>
</ul>
......@@ -38,13 +39,13 @@
</div>
</div>
<div id="outline-container-org2612284" class="outline-2">
<h2 id="org2612284">Additional references</h2>
<div class="outline-text-2" id="text-org2612284">
<div id="outline-container-org0d4a0e8" class="outline-2">
<h2 id="org0d4a0e8">Additional references</h2>
<div class="outline-text-2" id="text-org0d4a0e8">
</div>
<div id="outline-container-org6dd38af" class="outline-3">
<h3 id="org6dd38af">"Thoughts" on language/software stability</h3>
<div class="outline-text-3" id="text-org6dd38af">
<div id="outline-container-orgc4f6c50" class="outline-3">
<h3 id="orgc4f6c50">"Thoughts" on language/software stability</h3>
<div class="outline-text-3" id="text-orgc4f6c50">
<p>
As we explained, the programming language used in an analysis has a
clear influence on the reproducibility of your analysis. It is not a
......@@ -95,9 +96,9 @@ version and environment control will always help.
</p>
</div>
</div>
<div id="outline-container-orgdcd752c" class="outline-3">
<h3 id="orgdcd752c">Controlling your software environment</h3>
<div class="outline-text-3" id="text-orgdcd752c">
<div id="outline-container-orgabfd56a" class="outline-3">
<h3 id="orgabfd56a">Controlling your software environment</h3>
<div class="outline-text-3" id="text-orgabfd56a">
<p>
As we mentioned in the video sequences, there are several solutions to
control your environment:
......@@ -133,9 +134,9 @@ Hinsen on Active Papers</a> (<a href="http://www.activepapers.org/">http://www.a
</p>
</div>
</div>
<div id="outline-container-orgade769d" class="outline-3">
<h3 id="orgade769d">Preservation/Archiving</h3>
<div class="outline-text-3" id="text-orgade769d">
<div id="outline-container-orgf56170d" class="outline-3">
<h3 id="orgf56170d">Preservation/Archiving</h3>
<div class="outline-text-3" id="text-orgf56170d">
<p>
Ensuring software is properly archived, i.e, is safely stored so that
it can be accessed in a perennial way, can be quite tricky. If you
......@@ -149,9 +150,9 @@ whenever the data is not sensitive.
</p>
</div>
</div>
<div id="outline-container-org2c58237" class="outline-3">
<h3 id="org2c58237">Workflows</h3>
<div class="outline-text-3" id="text-org2c58237">
<div id="outline-container-org476ea90" class="outline-3">
<h3 id="org476ea90">Workflows</h3>
<div class="outline-text-3" id="text-org476ea90">
<p>
In the video sequences, we mentioned workflow managers (original application domain in parenthesis):
</p>
......@@ -172,9 +173,9 @@ Bio-informatics: Current Status, Solutions and Research Opportunities
</div>
</div>
<div id="outline-container-org5e60f39" class="outline-3">
<h3 id="org5e60f39">Numerical and statistical issues</h3>
<div class="outline-text-3" id="text-org5e60f39">
<div id="outline-container-orgdacce8f" class="outline-3">
<h3 id="orgdacce8f">Numerical and statistical issues</h3>
<div class="outline-text-3" id="text-orgdacce8f">
<p>
We have mentioned these topics in our MOOC but we could by no way
cover them properly. We only suggest here a few interesting talks
......@@ -190,9 +191,9 @@ reproducibility and present recent research work on this topic.</a></li>
</ul>
</div>
</div>
<div id="outline-container-orgf8363e1" class="outline-3">
<h3 id="orgf8363e1">Publication practices</h3>
<div class="outline-text-3" id="text-orgf8363e1">
<div id="outline-container-org91673e7" class="outline-3">
<h3 id="org91673e7">Publication practices</h3>
<div class="outline-text-3" id="text-org91673e7">
<p>
You may want to have a look at the following two webinars:
</p>
......@@ -210,9 +211,9 @@ p-hacking, etc.</li>
</ul>
</div>
</div>
<div id="outline-container-org9cba5c9" class="outline-3">
<h3 id="org9cba5c9">Experimentation</h3>
<div class="outline-text-3" id="text-org9cba5c9">
<div id="outline-container-org9f7c676" class="outline-3">
<h3 id="org9f7c676">Experimentation</h3>
<div class="outline-text-3" id="text-org9f7c676">
<p>
Experimentation was not covered in this MOOC, although it is an
essential part of science. The main reason is that practices and
......@@ -230,13 +231,13 @@ Science</a>.</li>
</div>
</div>
</div>
<div id="outline-container-org55a5ab5" class="outline-2">
<h2 id="org55a5ab5">Tracking environment information</h2>
<div class="outline-text-2" id="text-org55a5ab5">
<div id="outline-container-orgbef6611" class="outline-2">
<h2 id="orgbef6611">Tracking environment information</h2>
<div class="outline-text-2" id="text-orgbef6611">
</div>
<div id="outline-container-orgf3b1e93" class="outline-3">
<h3 id="orgf3b1e93">Getting information about your Git repository</h3>
<div class="outline-text-3" id="text-orgf3b1e93">
<div id="outline-container-org9ef50b0" class="outline-3">
<h3 id="org9ef50b0">Getting information about your Git repository</h3>
<div class="outline-text-3" id="text-org9ef50b0">
<p>
When taking notes, it may be difficult to remember which version of
the code or of a file was used. This is what version control is useful
......@@ -327,13 +328,32 @@ is the price to pay for running git from within the notebook itself.
</p>
</div>
</div>
<div id="outline-container-org6d7f695" class="outline-3">
<h3 id="org6d7f695">Getting information about Python(3) libraries</h3>
<div class="outline-text-3" id="text-org6d7f695">
<div id="outline-container-orgc1cd356" class="outline-3">
<h3 id="orgc1cd356">Getting information about Python(3) libraries</h3>
<div class="outline-text-3" id="text-orgc1cd356">
</div>
<div id="outline-container-org546bbcf" class="outline-4">
<h4 id="org546bbcf">Getting the list of installed packages and their version</h4>
<div class="outline-text-4" id="text-org546bbcf">
<div id="outline-container-org6a455a3" class="outline-4">
<h4 id="org6a455a3">Getting information about your system</h4>
<div class="outline-text-4" id="text-org6a455a3">
<p>
This topic is discussed on <a href="https://stackoverflow.com/questions/3103178/how-to-get-the-system-info-with-python">StackOverflow</a>.
</p>
<div class="org-src-container">
<pre style="padding-left: 30px; background-color: #f6f8fa;" class="src src-python"><span style="font-weight: bold;">import</span> platform
<span style="font-weight: bold;">print</span>(platform.uname())
</pre>
</div>
<pre style="padding-left: 30px; background-color: #f6f8fa;" class="example">
uname_result(system='Linux', node='icarus', release='4.15.0-2-amd64', version='#1 SMP Debian 4.15.11-1 (2018-03-20)', machine='x86_64', processor='')
</pre>
</div>
</div>
<div id="outline-container-org96c1188" class="outline-4">
<h4 id="org96c1188">Getting the list of installed packages and their version</h4>
<div class="outline-text-4" id="text-org96c1188">
<p>
This topic is discussed on <a href="https://stackoverflow.com/questions/20180543/how-to-check-version-of-python-modules">StackOverflow</a>. When using <code>pip</code> (the Python
package installer) within a shell command, it is easy to query the
......@@ -441,9 +461,9 @@ Requires: patsy, pandas
</pre>
</div>
</div>
<div id="outline-container-org88ff00d" class="outline-4">
<h4 id="org88ff00d">How to list imported modules?</h4>
<div class="outline-text-4" id="text-org88ff00d">
<div id="outline-container-org46d5140" class="outline-4">
<h4 id="org46d5140">How to list imported modules?</h4>
<div class="outline-text-4" id="text-org46d5140">
<p>
Without resorting to pip (that will list all available packages), you
may want to know which modules are loaded in a Python session as well
......@@ -458,7 +478,7 @@ which is unfortunately not completely standard).
<span style="font-weight: bold;">for</span> name, val <span style="font-weight: bold;">in</span> <span style="font-weight: bold;">sorted</span>(sys.modules.items()):
<span style="font-weight: bold;">if</span>(<span style="font-weight: bold;">hasattr</span>(val, <span style="font-style: italic;">'__version__'</span>)):
<span style="font-weight: bold;">print</span>(val.<span style="font-weight: bold;">__name__</span>, val.__version__)
<span style="font-weight: bold;">else</span>
<span style="font-weight: bold;">else</span>:
<span style="font-weight: bold;">print</span>(val.<span style="font-weight: bold;">__name__</span>, <span style="font-style: italic;">"(unknown version)"</span>)
<span style="font-weight: bold;">print</span>(<span style="font-style: italic;">"**** Package list in the beginning ****"</span>);
......@@ -466,7 +486,6 @@ print_imported_modules()
<span style="font-weight: bold;">print</span>(<span style="font-style: italic;">"**** Package list after loading pandas ****"</span>);
<span style="font-weight: bold;">import</span> pandas
print_imported_modules()
</pre>
</div>
......@@ -506,9 +525,9 @@ zlib 1.0
</div>
</div>
<div id="outline-container-org8d6c94f" class="outline-4">
<h4 id="org8d6c94f">Saving and restoring an environment with pip</h4>
<div class="outline-text-4" id="text-org8d6c94f">
<div id="outline-container-org1127887" class="outline-4">
<h4 id="org1127887">Saving and restoring an environment with pip</h4>
<div class="outline-text-4" id="text-org1127887">
<p>
The easiest way to go is as follows:
</p>
......@@ -525,9 +544,9 @@ dynamic libraries that are wrapped by Python though.
</p>
</div>
</div>
<div id="outline-container-org1fdfaf0" class="outline-4">
<h4 id="org1fdfaf0">Installing a new package or a specific version</h4>
<div class="outline-text-4" id="text-org1fdfaf0">
<div id="outline-container-org4522704" class="outline-4">
<h4 id="org4522704">Installing a new package or a specific version</h4>
<div class="outline-text-4" id="text-org4522704">
<p>
The Jupyter environment we deployed on our servers for the MOOC is
based on the version 4.5.4 of Miniconda and Python 3.6. In this
......@@ -594,13 +613,13 @@ It is even possible to install a specific (possibly much older) version, e.g.,:
</div>
</div>
</div>
<div id="outline-container-org71f6171" class="outline-3">
<h3 id="org71f6171">Getting information about R libraries</h3>
<div class="outline-text-3" id="text-org71f6171">
<div id="outline-container-orgd73af89" class="outline-3">
<h3 id="orgd73af89">Getting information about R libraries</h3>
<div class="outline-text-3" id="text-orgd73af89">
</div>
<div id="outline-container-org21ba69e" class="outline-4">
<h4 id="org21ba69e">Getting the list imported modules and their version</h4>
<div class="outline-text-4" id="text-org21ba69e">
<div id="outline-container-org549563f" class="outline-4">
<h4 id="org549563f">Getting the list imported modules and their version</h4>
<div class="outline-text-4" id="text-org549563f">
<p>
The best way seems to be to rely on the <code>devtools</code> package (if this
package is not installed, you should install it first by running in <code>R</code>
......@@ -668,9 +687,9 @@ clean R dependency management should thus have a look at <a href="https://rstudi
</p>
</div>
</div>
<div id="outline-container-orgdbb0731" class="outline-4">
<h4 id="orgdbb0731">Getting the list of installed packages and their version</h4>
<div class="outline-text-4" id="text-orgdbb0731">
<div id="outline-container-orgafe4f90" class="outline-4">
<h4 id="orgafe4f90">Getting the list of installed packages and their version</h4>
<div class="outline-text-4" id="text-orgafe4f90">
<p>
Finally, it is good to know that there is a built-in R command
(<code>installed.packages</code>) allowing to retrieve and list the details of all
......@@ -925,9 +944,9 @@ packages installed.
</div>
</div>
<div id="outline-container-org1110f15" class="outline-4">
<h4 id="org1110f15">Installing a new package or a specific version</h4>
<div class="outline-text-4" id="text-org1110f15">
<div id="outline-container-org9e3380b" class="outline-4">
<h4 id="org9e3380b">Installing a new package or a specific version</h4>
<div class="outline-text-4" id="text-org9e3380b">
<p>
This section is mostly a cut and paste from the <a href="https://support.rstudio.com/hc/en-us/articles/219949047-Installing-older-versions-of-packages">recent post by Ian
Pylvainen</a> on this topic. It comprises a very clear explanation of how
......@@ -936,8 +955,8 @@ to proceed.
</div>
<ul class="org-ul">
<li style="margin-bottom:0;"><a id="orgdf03a57"></a>Installing a pre-compiled version<br />
<div class="outline-text-5" id="text-orgdf03a57">
<li style="margin-bottom:0;"><a id="org1d1770e"></a>Installing a pre-compiled version<br />
<div class="outline-text-5" id="text-org1d1770e">
<p>
If you're on a Debian or a Ubuntu system, it may be difficult to
access a specific version without breaking your system. So unless you
......@@ -961,8 +980,8 @@ install.packages(packageurl, repos=<span style="font-weight: bold; text-decorati
</div>
</div>
</li>
<li style="margin-bottom:0;"><a id="orgc4b1a0b"></a>Using devtools<br />
<div class="outline-text-5" id="text-orgc4b1a0b">
<li style="margin-bottom:0;"><a id="org9183e3e"></a>Using devtools<br />
<div class="outline-text-5" id="text-org9183e3e">
<p>
The simplest method to install the version you need is to use the
<code>install_version()</code> function of the <code>devtools</code> package (obviously, you
......@@ -977,8 +996,8 @@ install_version(<span style="font-style: italic;">"ggplot2"</span>, version = <s
</div>
</div>
</li>
<li style="margin-bottom:0;"><a id="org6f6cbcb"></a>Installing from source code<br />
<div class="outline-text-5" id="text-org6f6cbcb">
<li style="margin-bottom:0;"><a id="orgd8742a1"></a>Installing from source code<br />
<div class="outline-text-5" id="text-orgd8742a1">
<p>
Alternatively, you may want to install an older package from source If
devtools fails or if you do not want to depend on it, you can install
......@@ -1007,8 +1026,8 @@ R CMD INSTALL ggplot2_0.9.1.tar.gz
</div>
</div>
</li>
<li style="margin-bottom:0;"><a id="org69510d5"></a>Potential issues<br />
<div class="outline-text-5" id="text-org69510d5">
<li style="margin-bottom:0;"><a id="orga4f8c7a"></a>Potential issues<br />
<div class="outline-text-5" id="text-orga4f8c7a">
<p>
There are a few potential issues that may arise with installing older
versions of packages:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment