Commit ca46083a authored by Arnaud Legrand's avatar Arnaud Legrand

Regenerate HTML. (Propagate to FUN)

parent fac29a0a
...@@ -3,33 +3,34 @@ ...@@ -3,33 +3,34 @@
<h2>Table of Contents</h2> <h2>Table of Contents</h2>
<div id="text-table-of-contents"> <div id="text-table-of-contents">
<ul style="margin:0 0;"> <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;"> <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="#orgc4f6c50">"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="#orgabfd56a">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="#orgf56170d">Preservation/Archiving</a></li>
<li style="margin-bottom:0;"><a href="#org2c58237">Workflows</a></li> <li style="margin-bottom:0;"><a href="#org476ea90">Workflows</a></li>
<li style="margin-bottom:0;"><a href="#org5e60f39">Numerical and statistical issues</a></li> <li style="margin-bottom:0;"><a href="#orgdacce8f">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="#org91673e7">Publication practices</a></li>
<li style="margin-bottom:0;"><a href="#org9cba5c9">Experimentation</a></li> <li style="margin-bottom:0;"><a href="#org9f7c676">Experimentation</a></li>
</ul> </ul>
</li> </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;"> <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="#org9ef50b0">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="#orgc1cd356">Getting information about Python(3) libraries</a>
<ul style="margin:0 0;"> <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="#org6a455a3">Getting information about your system</a></li>
<li style="margin-bottom:0;"><a href="#org88ff00d">How to list imported modules?</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="#org8d6c94f">Saving and restoring an environment with pip</a></li> <li style="margin-bottom:0;"><a href="#org46d5140">How to list imported modules?</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="#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> </ul>
</li> </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;"> <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="#org549563f">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="#orgafe4f90">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="#org9e3380b">Installing a new package or a specific version</a></li>
</ul> </ul>
</li> </li>
</ul> </ul>
...@@ -38,13 +39,13 @@ ...@@ -38,13 +39,13 @@
</div> </div>
</div> </div>
<div id="outline-container-org2612284" class="outline-2"> <div id="outline-container-org0d4a0e8" class="outline-2">
<h2 id="org2612284">Additional references</h2> <h2 id="org0d4a0e8">Additional references</h2>
<div class="outline-text-2" id="text-org2612284"> <div class="outline-text-2" id="text-org0d4a0e8">
</div> </div>
<div id="outline-container-org6dd38af" class="outline-3"> <div id="outline-container-orgc4f6c50" class="outline-3">
<h3 id="org6dd38af">"Thoughts" on language/software stability</h3> <h3 id="orgc4f6c50">"Thoughts" on language/software stability</h3>
<div class="outline-text-3" id="text-org6dd38af"> <div class="outline-text-3" id="text-orgc4f6c50">
<p> <p>
As we explained, the programming language used in an analysis has a As we explained, the programming language used in an analysis has a
clear influence on the reproducibility of your analysis. It is not a clear influence on the reproducibility of your analysis. It is not a
...@@ -95,9 +96,9 @@ version and environment control will always help. ...@@ -95,9 +96,9 @@ version and environment control will always help.
</p> </p>
</div> </div>
</div> </div>
<div id="outline-container-orgdcd752c" class="outline-3"> <div id="outline-container-orgabfd56a" class="outline-3">
<h3 id="orgdcd752c">Controlling your software environment</h3> <h3 id="orgabfd56a">Controlling your software environment</h3>
<div class="outline-text-3" id="text-orgdcd752c"> <div class="outline-text-3" id="text-orgabfd56a">
<p> <p>
As we mentioned in the video sequences, there are several solutions to As we mentioned in the video sequences, there are several solutions to
control your environment: control your environment:
...@@ -133,9 +134,9 @@ Hinsen on Active Papers</a> (<a href="http://www.activepapers.org/">http://www.a ...@@ -133,9 +134,9 @@ Hinsen on Active Papers</a> (<a href="http://www.activepapers.org/">http://www.a
</p> </p>
</div> </div>
</div> </div>
<div id="outline-container-orgade769d" class="outline-3"> <div id="outline-container-orgf56170d" class="outline-3">
<h3 id="orgade769d">Preservation/Archiving</h3> <h3 id="orgf56170d">Preservation/Archiving</h3>
<div class="outline-text-3" id="text-orgade769d"> <div class="outline-text-3" id="text-orgf56170d">
<p> <p>
Ensuring software is properly archived, i.e, is safely stored so that 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 it can be accessed in a perennial way, can be quite tricky. If you
...@@ -149,9 +150,9 @@ whenever the data is not sensitive. ...@@ -149,9 +150,9 @@ whenever the data is not sensitive.
</p> </p>
</div> </div>
</div> </div>
<div id="outline-container-org2c58237" class="outline-3"> <div id="outline-container-org476ea90" class="outline-3">
<h3 id="org2c58237">Workflows</h3> <h3 id="org476ea90">Workflows</h3>
<div class="outline-text-3" id="text-org2c58237"> <div class="outline-text-3" id="text-org476ea90">
<p> <p>
In the video sequences, we mentioned workflow managers (original application domain in parenthesis): In the video sequences, we mentioned workflow managers (original application domain in parenthesis):
</p> </p>
...@@ -172,9 +173,9 @@ Bio-informatics: Current Status, Solutions and Research Opportunities ...@@ -172,9 +173,9 @@ Bio-informatics: Current Status, Solutions and Research Opportunities
</div> </div>
</div> </div>
<div id="outline-container-org5e60f39" class="outline-3"> <div id="outline-container-orgdacce8f" class="outline-3">
<h3 id="org5e60f39">Numerical and statistical issues</h3> <h3 id="orgdacce8f">Numerical and statistical issues</h3>
<div class="outline-text-3" id="text-org5e60f39"> <div class="outline-text-3" id="text-orgdacce8f">
<p> <p>
We have mentioned these topics in our MOOC but we could by no way 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 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> ...@@ -190,9 +191,9 @@ reproducibility and present recent research work on this topic.</a></li>
</ul> </ul>
</div> </div>
</div> </div>
<div id="outline-container-orgf8363e1" class="outline-3"> <div id="outline-container-org91673e7" class="outline-3">
<h3 id="orgf8363e1">Publication practices</h3> <h3 id="org91673e7">Publication practices</h3>
<div class="outline-text-3" id="text-orgf8363e1"> <div class="outline-text-3" id="text-org91673e7">
<p> <p>
You may want to have a look at the following two webinars: You may want to have a look at the following two webinars:
</p> </p>
...@@ -210,9 +211,9 @@ p-hacking, etc.</li> ...@@ -210,9 +211,9 @@ p-hacking, etc.</li>
</ul> </ul>
</div> </div>
</div> </div>
<div id="outline-container-org9cba5c9" class="outline-3"> <div id="outline-container-org9f7c676" class="outline-3">
<h3 id="org9cba5c9">Experimentation</h3> <h3 id="org9f7c676">Experimentation</h3>
<div class="outline-text-3" id="text-org9cba5c9"> <div class="outline-text-3" id="text-org9f7c676">
<p> <p>
Experimentation was not covered in this MOOC, although it is an Experimentation was not covered in this MOOC, although it is an
essential part of science. The main reason is that practices and essential part of science. The main reason is that practices and
...@@ -230,13 +231,13 @@ Science</a>.</li> ...@@ -230,13 +231,13 @@ Science</a>.</li>
</div> </div>
</div> </div>
</div> </div>
<div id="outline-container-org55a5ab5" class="outline-2"> <div id="outline-container-orgbef6611" class="outline-2">
<h2 id="org55a5ab5">Tracking environment information</h2> <h2 id="orgbef6611">Tracking environment information</h2>
<div class="outline-text-2" id="text-org55a5ab5"> <div class="outline-text-2" id="text-orgbef6611">
</div> </div>
<div id="outline-container-orgf3b1e93" class="outline-3"> <div id="outline-container-org9ef50b0" class="outline-3">
<h3 id="orgf3b1e93">Getting information about your Git repository</h3> <h3 id="org9ef50b0">Getting information about your Git repository</h3>
<div class="outline-text-3" id="text-orgf3b1e93"> <div class="outline-text-3" id="text-org9ef50b0">
<p> <p>
When taking notes, it may be difficult to remember which version of 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 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. ...@@ -327,13 +328,32 @@ is the price to pay for running git from within the notebook itself.
</p> </p>
</div> </div>
</div> </div>
<div id="outline-container-org6d7f695" class="outline-3"> <div id="outline-container-orgc1cd356" class="outline-3">
<h3 id="org6d7f695">Getting information about Python(3) libraries</h3> <h3 id="orgc1cd356">Getting information about Python(3) libraries</h3>
<div class="outline-text-3" id="text-org6d7f695"> <div class="outline-text-3" id="text-orgc1cd356">
</div> </div>
<div id="outline-container-org546bbcf" class="outline-4"> <div id="outline-container-org6a455a3" class="outline-4">
<h4 id="org546bbcf">Getting the list of installed packages and their version</h4> <h4 id="org6a455a3">Getting information about your system</h4>
<div class="outline-text-4" id="text-org546bbcf"> <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> <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 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 package installer) within a shell command, it is easy to query the
...@@ -441,9 +461,9 @@ Requires: patsy, pandas ...@@ -441,9 +461,9 @@ Requires: patsy, pandas
</pre> </pre>
</div> </div>
</div> </div>
<div id="outline-container-org88ff00d" class="outline-4"> <div id="outline-container-org46d5140" class="outline-4">
<h4 id="org88ff00d">How to list imported modules?</h4> <h4 id="org46d5140">How to list imported modules?</h4>
<div class="outline-text-4" id="text-org88ff00d"> <div class="outline-text-4" id="text-org46d5140">
<p> <p>
Without resorting to pip (that will list all available packages), you 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 may want to know which modules are loaded in a Python session as well
...@@ -458,7 +478,7 @@ which is unfortunately not completely standard). ...@@ -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;">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;">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;">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>(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>); <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() ...@@ -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;">print</span>(<span style="font-style: italic;">"**** Package list after loading pandas ****"</span>);
<span style="font-weight: bold;">import</span> pandas <span style="font-weight: bold;">import</span> pandas
print_imported_modules() print_imported_modules()
</pre> </pre>
</div> </div>
...@@ -506,9 +525,9 @@ zlib 1.0 ...@@ -506,9 +525,9 @@ zlib 1.0
</div> </div>
</div> </div>
<div id="outline-container-org8d6c94f" class="outline-4"> <div id="outline-container-org1127887" class="outline-4">
<h4 id="org8d6c94f">Saving and restoring an environment with pip</h4> <h4 id="org1127887">Saving and restoring an environment with pip</h4>
<div class="outline-text-4" id="text-org8d6c94f"> <div class="outline-text-4" id="text-org1127887">
<p> <p>
The easiest way to go is as follows: The easiest way to go is as follows:
</p> </p>
...@@ -525,9 +544,9 @@ dynamic libraries that are wrapped by Python though. ...@@ -525,9 +544,9 @@ dynamic libraries that are wrapped by Python though.
</p> </p>
</div> </div>
</div> </div>
<div id="outline-container-org1fdfaf0" class="outline-4"> <div id="outline-container-org4522704" class="outline-4">
<h4 id="org1fdfaf0">Installing a new package or a specific version</h4> <h4 id="org4522704">Installing a new package or a specific version</h4>
<div class="outline-text-4" id="text-org1fdfaf0"> <div class="outline-text-4" id="text-org4522704">
<p> <p>
The Jupyter environment we deployed on our servers for the MOOC is 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 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.,: ...@@ -594,13 +613,13 @@ It is even possible to install a specific (possibly much older) version, e.g.,:
</div> </div>
</div> </div>
</div> </div>
<div id="outline-container-org71f6171" class="outline-3"> <div id="outline-container-orgd73af89" class="outline-3">
<h3 id="org71f6171">Getting information about R libraries</h3> <h3 id="orgd73af89">Getting information about R libraries</h3>
<div class="outline-text-3" id="text-org71f6171"> <div class="outline-text-3" id="text-orgd73af89">
</div> </div>
<div id="outline-container-org21ba69e" class="outline-4"> <div id="outline-container-org549563f" class="outline-4">
<h4 id="org21ba69e">Getting the list imported modules and their version</h4> <h4 id="org549563f">Getting the list imported modules and their version</h4>
<div class="outline-text-4" id="text-org21ba69e"> <div class="outline-text-4" id="text-org549563f">
<p> <p>
The best way seems to be to rely on the <code>devtools</code> package (if this 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> 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 ...@@ -668,9 +687,9 @@ clean R dependency management should thus have a look at <a href="https://rstudi
</p> </p>
</div> </div>
</div> </div>
<div id="outline-container-orgdbb0731" class="outline-4"> <div id="outline-container-orgafe4f90" class="outline-4">
<h4 id="orgdbb0731">Getting the list of installed packages and their version</h4> <h4 id="orgafe4f90">Getting the list of installed packages and their version</h4>
<div class="outline-text-4" id="text-orgdbb0731"> <div class="outline-text-4" id="text-orgafe4f90">
<p> <p>
Finally, it is good to know that there is a built-in R command 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 (<code>installed.packages</code>) allowing to retrieve and list the details of all
...@@ -925,9 +944,9 @@ packages installed. ...@@ -925,9 +944,9 @@ packages installed.
</div> </div>
</div> </div>
<div id="outline-container-org1110f15" class="outline-4"> <div id="outline-container-org9e3380b" class="outline-4">
<h4 id="org1110f15">Installing a new package or a specific version</h4> <h4 id="org9e3380b">Installing a new package or a specific version</h4>
<div class="outline-text-4" id="text-org1110f15"> <div class="outline-text-4" id="text-org9e3380b">
<p> <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 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 Pylvainen</a> on this topic. It comprises a very clear explanation of how
...@@ -936,8 +955,8 @@ to proceed. ...@@ -936,8 +955,8 @@ to proceed.
</div> </div>
<ul class="org-ul"> <ul class="org-ul">
<li style="margin-bottom:0;"><a id="orgdf03a57"></a>Installing a pre-compiled version<br /> <li style="margin-bottom:0;"><a id="org1d1770e"></a>Installing a pre-compiled version<br />
<div class="outline-text-5" id="text-orgdf03a57"> <div class="outline-text-5" id="text-org1d1770e">
<p> <p>
If you're on a Debian or a Ubuntu system, it may be difficult to 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 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 ...@@ -961,8 +980,8 @@ install.packages(packageurl, repos=<span style="font-weight: bold; text-decorati
</div> </div>
</div> </div>
</li> </li>
<li style="margin-bottom:0;"><a id="orgc4b1a0b"></a>Using devtools<br /> <li style="margin-bottom:0;"><a id="org9183e3e"></a>Using devtools<br />
<div class="outline-text-5" id="text-orgc4b1a0b"> <div class="outline-text-5" id="text-org9183e3e">
<p> <p>
The simplest method to install the version you need is to use the 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 <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 ...@@ -977,8 +996,8 @@ install_version(<span style="font-style: italic;">"ggplot2"</span>, version = <s
</div> </div>
</div> </div>
</li> </li>
<li style="margin-bottom:0;"><a id="org6f6cbcb"></a>Installing from source code<br /> <li style="margin-bottom:0;"><a id="orgd8742a1"></a>Installing from source code<br />
<div class="outline-text-5" id="text-org6f6cbcb"> <div class="outline-text-5" id="text-orgd8742a1">
<p> <p>
Alternatively, you may want to install an older package from source If 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 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 ...@@ -1007,8 +1026,8 @@ R CMD INSTALL ggplot2_0.9.1.tar.gz
</div> </div>
</div> </div>
</li> </li>
<li style="margin-bottom:0;"><a id="org69510d5"></a>Potential issues<br /> <li style="margin-bottom:0;"><a id="orga4f8c7a"></a>Potential issues<br />
<div class="outline-text-5" id="text-org69510d5"> <div class="outline-text-5" id="text-orga4f8c7a">
<p> <p>
There are a few potential issues that may arise with installing older There are a few potential issues that may arise with installing older
versions of packages: 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