Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
M
mooc-rr
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
3e6bf7b47a05a05ae3d6af86121dcb5d
mooc-rr
Commits
2bd85277
Commit
2bd85277
authored
Apr 18, 2020
by
François Févotte
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Ex 02-4 : MaJ
parent
26cc1e49
Changes
5
Show whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
539 additions
and
1 deletion
+539
-1
daily.png
module2/exo4/daily.png
+0
-0
exercice_python_fr.html
module2/exo4/exercice_python_fr.html
+529
-0
exercice_python_fr.org
module2/exo4/exercice_python_fr.org
+10
-1
exercice_python_fr.pdf
module2/exo4/exercice_python_fr.pdf
+0
-0
total.png
module2/exo4/total.png
+0
-0
No files found.
module2/exo4/daily.png
View replaced file @
26cc1e49
View file @
2bd85277
100 KB
|
W:
|
H:
101 KB
|
W:
|
H:
2-up
Swipe
Onion skin
module2/exo4/exercice_python_fr.html
0 → 100644
View file @
2bd85277
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html
xmlns=
"http://www.w3.org/1999/xhtml"
lang=
"fr"
xml:lang=
"fr"
>
<head>
<!-- 2020-04-19 Sun 00:28 -->
<meta
http-equiv=
"Content-Type"
content=
"text/html;charset=utf-8"
/>
<meta
name=
"viewport"
content=
"width=device-width, initial-scale=1"
/>
<title>
Quelques chiffres autour de l'épidémie de Covid-19
</title>
<meta
name=
"generator"
content=
"Org mode"
/>
<meta
name=
"author"
content=
"François Févotte"
/>
<style
type=
"text/css"
>
<!
--
/*
--
><![
CDATA
[/*><!
--
*/
.title
{
text-align
:
center
;
margin-bottom
:
.2em
;
}
.subtitle
{
text-align
:
center
;
font-size
:
medium
;
font-weight
:
bold
;
margin-top
:
0
;
}
.todo
{
font-family
:
monospace
;
color
:
red
;
}
.done
{
font-family
:
monospace
;
color
:
green
;
}
.priority
{
font-family
:
monospace
;
color
:
orange
;
}
.tag
{
background-color
:
#eee
;
font-family
:
monospace
;
padding
:
2px
;
font-size
:
80%
;
font-weight
:
normal
;
}
.timestamp
{
color
:
#bebebe
;
}
.timestamp-kwd
{
color
:
#5f9ea0
;
}
.org-right
{
margin-left
:
auto
;
margin-right
:
0px
;
text-align
:
right
;
}
.org-left
{
margin-left
:
0px
;
margin-right
:
auto
;
text-align
:
left
;
}
.org-center
{
margin-left
:
auto
;
margin-right
:
auto
;
text-align
:
center
;
}
.underline
{
text-decoration
:
underline
;
}
#postamble
p
,
#preamble
p
{
font-size
:
90%
;
margin
:
.2em
;
}
p
.verse
{
margin-left
:
3%
;
}
pre
{
border
:
1px
solid
#ccc
;
box-shadow
:
3px
3px
3px
#eee
;
padding
:
8pt
;
font-family
:
monospace
;
overflow
:
auto
;
margin
:
1.2em
;
}
pre
.src
{
position
:
relative
;
overflow
:
visible
;
padding-top
:
1.2em
;
}
pre
.src
:before
{
display
:
none
;
position
:
absolute
;
background-color
:
white
;
top
:
-10px
;
right
:
10px
;
padding
:
3px
;
border
:
1px
solid
black
;
}
pre
.src
:hover:before
{
display
:
inline
;}
/* Languages per Org manual */
pre
.src-asymptote
:before
{
content
:
'Asymptote'
;
}
pre
.src-awk
:before
{
content
:
'Awk'
;
}
pre
.src-C
:before
{
content
:
'C'
;
}
/* pre.src-C++ doesn't work in CSS */
pre
.src-clojure
:before
{
content
:
'Clojure'
;
}
pre
.src-css
:before
{
content
:
'CSS'
;
}
pre
.src-D
:before
{
content
:
'D'
;
}
pre
.src-ditaa
:before
{
content
:
'ditaa'
;
}
pre
.src-dot
:before
{
content
:
'Graphviz'
;
}
pre
.src-calc
:before
{
content
:
'Emacs Calc'
;
}
pre
.src-emacs-lisp
:before
{
content
:
'Emacs Lisp'
;
}
pre
.src-fortran
:before
{
content
:
'Fortran'
;
}
pre
.src-gnuplot
:before
{
content
:
'gnuplot'
;
}
pre
.src-haskell
:before
{
content
:
'Haskell'
;
}
pre
.src-hledger
:before
{
content
:
'hledger'
;
}
pre
.src-java
:before
{
content
:
'Java'
;
}
pre
.src-js
:before
{
content
:
'Javascript'
;
}
pre
.src-latex
:before
{
content
:
'LaTeX'
;
}
pre
.src-ledger
:before
{
content
:
'Ledger'
;
}
pre
.src-lisp
:before
{
content
:
'Lisp'
;
}
pre
.src-lilypond
:before
{
content
:
'Lilypond'
;
}
pre
.src-lua
:before
{
content
:
'Lua'
;
}
pre
.src-matlab
:before
{
content
:
'MATLAB'
;
}
pre
.src-mscgen
:before
{
content
:
'Mscgen'
;
}
pre
.src-ocaml
:before
{
content
:
'Objective Caml'
;
}
pre
.src-octave
:before
{
content
:
'Octave'
;
}
pre
.src-org
:before
{
content
:
'Org mode'
;
}
pre
.src-oz
:before
{
content
:
'OZ'
;
}
pre
.src-plantuml
:before
{
content
:
'Plantuml'
;
}
pre
.src-processing
:before
{
content
:
'Processing.js'
;
}
pre
.src-python
:before
{
content
:
'Python'
;
}
pre
.src-R
:before
{
content
:
'R'
;
}
pre
.src-ruby
:before
{
content
:
'Ruby'
;
}
pre
.src-sass
:before
{
content
:
'Sass'
;
}
pre
.src-scheme
:before
{
content
:
'Scheme'
;
}
pre
.src-screen
:before
{
content
:
'Gnu Screen'
;
}
pre
.src-sed
:before
{
content
:
'Sed'
;
}
pre
.src-sh
:before
{
content
:
'shell'
;
}
pre
.src-sql
:before
{
content
:
'SQL'
;
}
pre
.src-sqlite
:before
{
content
:
'SQLite'
;
}
/* additional languages in org.el's org-babel-load-languages alist */
pre
.src-forth
:before
{
content
:
'Forth'
;
}
pre
.src-io
:before
{
content
:
'IO'
;
}
pre
.src-J
:before
{
content
:
'J'
;
}
pre
.src-makefile
:before
{
content
:
'Makefile'
;
}
pre
.src-maxima
:before
{
content
:
'Maxima'
;
}
pre
.src-perl
:before
{
content
:
'Perl'
;
}
pre
.src-picolisp
:before
{
content
:
'Pico Lisp'
;
}
pre
.src-scala
:before
{
content
:
'Scala'
;
}
pre
.src-shell
:before
{
content
:
'Shell Script'
;
}
pre
.src-ebnf2ps
:before
{
content
:
'ebfn2ps'
;
}
/* additional language identifiers per "defun org-babel-execute"
in ob-*.el */
pre
.src-cpp
:before
{
content
:
'C++'
;
}
pre
.src-abc
:before
{
content
:
'ABC'
;
}
pre
.src-coq
:before
{
content
:
'Coq'
;
}
pre
.src-groovy
:before
{
content
:
'Groovy'
;
}
/* additional language identifiers from org-babel-shell-names in
ob-shell.el: ob-shell is the only babel language using a lambda to put
the execution function name together. */
pre
.src-bash
:before
{
content
:
'bash'
;
}
pre
.src-csh
:before
{
content
:
'csh'
;
}
pre
.src-ash
:before
{
content
:
'ash'
;
}
pre
.src-dash
:before
{
content
:
'dash'
;
}
pre
.src-ksh
:before
{
content
:
'ksh'
;
}
pre
.src-mksh
:before
{
content
:
'mksh'
;
}
pre
.src-posh
:before
{
content
:
'posh'
;
}
/* Additional Emacs modes also supported by the LaTeX listings package */
pre
.src-ada
:before
{
content
:
'Ada'
;
}
pre
.src-asm
:before
{
content
:
'Assembler'
;
}
pre
.src-caml
:before
{
content
:
'Caml'
;
}
pre
.src-delphi
:before
{
content
:
'Delphi'
;
}
pre
.src-html
:before
{
content
:
'HTML'
;
}
pre
.src-idl
:before
{
content
:
'IDL'
;
}
pre
.src-mercury
:before
{
content
:
'Mercury'
;
}
pre
.src-metapost
:before
{
content
:
'MetaPost'
;
}
pre
.src-modula-2
:before
{
content
:
'Modula-2'
;
}
pre
.src-pascal
:before
{
content
:
'Pascal'
;
}
pre
.src-ps
:before
{
content
:
'PostScript'
;
}
pre
.src-prolog
:before
{
content
:
'Prolog'
;
}
pre
.src-simula
:before
{
content
:
'Simula'
;
}
pre
.src-tcl
:before
{
content
:
'tcl'
;
}
pre
.src-tex
:before
{
content
:
'TeX'
;
}
pre
.src-plain-tex
:before
{
content
:
'Plain TeX'
;
}
pre
.src-verilog
:before
{
content
:
'Verilog'
;
}
pre
.src-vhdl
:before
{
content
:
'VHDL'
;
}
pre
.src-xml
:before
{
content
:
'XML'
;
}
pre
.src-nxml
:before
{
content
:
'XML'
;
}
/* add a generic configuration mode; LaTeX export needs an additional
(add-to-list 'org-latex-listings-langs '(conf " ")) in .emacs */
pre
.src-conf
:before
{
content
:
'Configuration File'
;
}
table
{
border-collapse
:
collapse
;
}
caption
.t-above
{
caption-side
:
top
;
}
caption
.t-bottom
{
caption-side
:
bottom
;
}
td
,
th
{
vertical-align
:
top
;
}
th
.org-right
{
text-align
:
center
;
}
th
.org-left
{
text-align
:
center
;
}
th
.org-center
{
text-align
:
center
;
}
td
.org-right
{
text-align
:
right
;
}
td
.org-left
{
text-align
:
left
;
}
td
.org-center
{
text-align
:
center
;
}
dt
{
font-weight
:
bold
;
}
.footpara
{
display
:
inline
;
}
.footdef
{
margin-bottom
:
1em
;
}
.figure
{
padding
:
1em
;
}
.figure
p
{
text-align
:
center
;
}
.inlinetask
{
padding
:
10px
;
border
:
2px
solid
gray
;
margin
:
10px
;
background
:
#ffffcc
;
}
#org-div-home-and-up
{
text-align
:
right
;
font-size
:
70%
;
white-space
:
nowrap
;
}
textarea
{
overflow-x
:
auto
;
}
.linenr
{
font-size
:
smaller
}
.code-highlighted
{
background-color
:
#ffff00
;
}
.org-info-js_info-navigation
{
border-style
:
none
;
}
#org-info-js_console-label
{
font-size
:
10px
;
font-weight
:
bold
;
white-space
:
nowrap
;
}
.org-info-js_search-highlight
{
background-color
:
#ffff00
;
color
:
#000000
;
font-weight
:
bold
;
}
.org-svg
{
width
:
90%
;
}
/*]]>*/
--
>
</style>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"http://www.pirilampo.org/styles/readtheorg/css/htmlize.css"
/>
<link
rel=
"stylesheet"
type=
"text/css"
href=
"http://www.pirilampo.org/styles/readtheorg/css/readtheorg.css"
/>
<script
src=
"https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"
></script>
<script
src=
"https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"
></script>
<script
type=
"text/javascript"
src=
"http://www.pirilampo.org/styles/lib/js/jquery.stickytableheaders.js"
></script>
<script
type=
"text/javascript"
src=
"http://www.pirilampo.org/styles/readtheorg/js/readtheorg.js"
></script>
<script
type=
"text/javascript"
>
/*
@licstart The following is the entire license notice for the
JavaScript code in this tag.
Copyright (C) 2012-2019 Free Software Foundation, Inc.
The JavaScript code in this tag is free software: you can
redistribute it and/or modify it under the terms of the GNU
General Public License (GNU GPL) as published by the Free Software
Foundation, either version 3 of the License, or (at your option)
any later version. The code is distributed WITHOUT ANY WARRANTY;
without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU GPL for more details.
As additional permission under GNU GPL version 3 section 7, you
may distribute non-source (e.g., minimized or compacted) forms of
that code without the copy of the GNU GPL normally required by
section 4, provided you include this license notice and a URL
through which recipients can access the Corresponding Source.
@licend The above is the entire license notice
for the JavaScript code in this tag.
*/
<!--
/*--><![CDATA[/*><!--*/
function
CodeHighlightOn
(
elem
,
id
)
{
var
target
=
document
.
getElementById
(
id
);
if
(
null
!=
target
)
{
elem
.
cacheClassElem
=
elem
.
className
;
elem
.
cacheClassTarget
=
target
.
className
;
target
.
className
=
"code-highlighted"
;
elem
.
className
=
"code-highlighted"
;
}
}
function
CodeHighlightOff
(
elem
,
id
)
{
var
target
=
document
.
getElementById
(
id
);
if
(
elem
.
cacheClassElem
)
elem
.
className
=
elem
.
cacheClassElem
;
if
(
elem
.
cacheClassTarget
)
target
.
className
=
elem
.
cacheClassTarget
;
}
/*]]>*/
//-->
</script>
<script
type=
"text/x-mathjax-config"
>
MathJax
.
Hub
.
Config
({
displayAlign
:
"center"
,
displayIndent
:
"0em"
,
"HTML-CSS"
:
{
scale
:
100
,
linebreaks
:
{
automatic
:
"false"
},
webFont
:
"TeX"
},
SVG
:
{
scale
:
100
,
linebreaks
:
{
automatic
:
"false"
},
font
:
"TeX"
},
NativeMML
:
{
scale
:
100
},
TeX
:
{
equationNumbers
:
{
autoNumber
:
"AMS"
},
MultLineWidth
:
"85%"
,
TagSide
:
"right"
,
TagIndent
:
".8em"
}
});
</script>
<script
type=
"text/javascript"
src=
"https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.0/MathJax.js?config=TeX-AMS_HTML"
></script>
</head>
<body>
<div
id=
"content"
>
<h1
class=
"title"
>
Quelques chiffres autour de l'épidémie de Covid-19
</h1>
<div
id=
"table-of-contents"
>
<h2>
Table des matières
</h2>
<div
id=
"text-table-of-contents"
>
<ul>
<li><a
href=
"#org09296a4"
>
1. Identification du système
</a></li>
<li><a
href=
"#orga74532a"
>
2. Récupération des données
</a></li>
<li><a
href=
"#orgbe41bde"
>
3. Evolution comparée de l'épidémie dans quelques pays
</a></li>
<li><a
href=
"#org2933e83"
>
4. Vers un passage du pic ?
</a></li>
</ul>
</div>
</div>
<div
id=
"outline-container-org09296a4"
class=
"outline-2"
>
<h2
id=
"org09296a4"
><span
class=
"section-number-2"
>
1
</span>
Identification du système
</h2>
<div
class=
"outline-text-2"
id=
"text-1"
>
<div
class=
"org-src-container"
>
<pre
class=
"src src-shell"
>
date
<span
style=
"color: #de7fa8;"
>
"+%Y-%m-%d"
</span>
</pre>
</div>
<pre
class=
"example"
>
2020-04-19
</pre>
<div
class=
"org-src-container"
>
<pre
class=
"src src-shell"
>
uname -a
</pre>
</div>
<pre
class=
"example"
>
Linux aluminium 4.14.0-3-amd64 #1 SMP Debian 4.14.17-1 (2018-02-14) x86_64 GNU/Linux
</pre>
<div
class=
"org-src-container"
>
<pre
class=
"src src-python"
><span
style=
"color: #729fcf; font-weight: bold;"
>
import
</span>
sys
sys.version
</pre>
</div>
<pre
class=
"example"
>
3.7.3rc1 (default, Mar 13 2019, 11:01:15)
[GCC 8.3.0]
</pre>
</div>
</div>
<div
id=
"outline-container-orga74532a"
class=
"outline-2"
>
<h2
id=
"orga74532a"
><span
class=
"section-number-2"
>
2
</span>
Récupération des données
</h2>
<div
class=
"outline-text-2"
id=
"text-2"
>
<p>
On prend les données distribuées par
<a
href=
"https://ourworldindata.org"
>
Our World In Data
</a>
, elles-mêmes issues de
l'
<a
href=
"https://www.ecdc.europa.eu/"
>
ECDC
</a>
:
</p>
<div
class=
"org-src-container"
>
<pre
class=
"src src-python"
><span
style=
"color: #ff2929;"
>
url
</span>
=
<span
style=
"color: #de7fa8;"
>
"https://covid.ourworldindata.org/data/ecdc/full_data.csv"
</span>
<span
style=
"color: #ff2929;"
>
data_raw
</span>
= pd.read_csv(url, index_col=
<span
style=
"color: #de7fa8;"
>
'date'
</span>
)
data_raw.tail(3)
</pre>
</div>
<pre
class=
"example"
>
location new_cases new_deaths total_cases total_deaths
date
2020-04-16 Zimbabwe 6 0 23 3
2020-04-17 Zimbabwe 1 0 24 3
2020-04-18 Zimbabwe 0 0 24 3
</pre>
</div>
</div>
<div
id=
"outline-container-orgbe41bde"
class=
"outline-2"
>
<h2
id=
"orgbe41bde"
><span
class=
"section-number-2"
>
3
</span>
Evolution comparée de l'épidémie dans quelques pays
</h2>
<div
class=
"outline-text-2"
id=
"text-3"
>
<p>
Je préfère fonder l'analyse sur le nombre de décès, qui me semble plus fiable et
comparable d'un pays à l'autre que, par exemple, le nombre de cas dépistés. Afin
de recaler l'axe temporel, on positionne \(t=0\) au moment où le nombre total de
morts dépasse 100.
</p>
<p>
La logique est la suivante : on considère le nombre \(n^c\) (de décès ou de cas)
dans un pays \(c\). On suppose que l'évolution de \(n^c\) en fonction du temps \(t\)
suit une loi de croissance exponentielle (au moins dans une phase initiale). On
s'attend ainsi à avoir une expression du type :
\[
n^c(t) = n^c_0 \, e^{\lambda^c \left(t-t^c_0\right)}.
\]
Dans cette expression, la valeur initiale \(n^c_0 = n^c(t^c_0)\) est liée à la
taille de la population considérée. La constante de temps \(\lambda^c\) en revanche,
n'a pas vraiment de raison de l'être : elle reflète simplement le rythme auquel
l'épidémie se propage.
</p>
<p>
Si l'on se donne un seuil \(\tau\) unique, on peut fixer pour chaque pays
l'instant initial \(t^c_0\) de sorte que
\[
n^c(t^c_0) = \tau.
\]
En effectuant un recalage de l'instant initial, c'est à dire en effectuant le
changement de variable temporelle \(\tilde{t}^c=t-t^c_0\), on obtient
\[
n^c(\tilde{t}^c) = \tau \, e^{\lambda^c\,\tilde{t}^c},
\]
ce qui signifie que tous les pays deviennent comparables, indépendamment de leur
taille : on s'est ramené à comparer les constantes de temps \(\lambda^c\) entre
elles.
</p>
<p>
En pratique, on prend
\[
t^c_0 = \min \left\{t ; n^c(t) > \tau \right\}.
\]
</p>
<div
class=
"org-src-container"
>
<pre
class=
"src src-python"
><span
style=
"color: #babdb6; font-style: italic;"
>
#
</span><span
style=
"color: #babdb6; font-style: italic;"
>
Parameters
</span>
<span
style=
"color: #ff2929;"
>
column
</span>
=
<span
style=
"color: #de7fa8;"
>
"total_deaths"
</span>
<span
style=
"color: #ff2929;"
>
threshold
</span>
= 100
<span
style=
"color: #ff2929;"
>
countries
</span>
= [
<span
style=
"color: #de7fa8;"
>
"Italy"
</span>
,
<span
style=
"color: #de7fa8;"
>
"Spain"
</span>
,
<span
style=
"color: #de7fa8;"
>
"France"
</span>
,
<span
style=
"color: #de7fa8;"
>
"United Kingdom"
</span>
,
<span
style=
"color: #de7fa8;"
>
"Germany"
</span>
,
<span
style=
"color: #de7fa8;"
>
"Switzerland"
</span>
]
<span
style=
"color: #ff2929;"
>
total
</span>
= {}
<span
style=
"color: #729fcf; font-weight: bold;"
>
for
</span>
country
<span
style=
"color: #729fcf; font-weight: bold;"
>
in
</span>
countries:
<span
style=
"color: #ff2929;"
>
total
</span>
[country] = data_raw.query(f
<span
style=
"color: #de7fa8;"
>
"location == '{country}'
&
{column}
>
{threshold}"
</span>
)
total[countries[2]]
</pre>
</div>
<pre
class=
"example"
>
location new_cases new_deaths total_cases total_deaths
date
2020-03-16 France 924 36 5423 127
2020-03-17 France 1210 21 6633 148
2020-03-18 France 1097 27 7730 175
2020-03-19 France 1404 69 9134 244
2020-03-20 France 1861 128 10995 372
2020-03-21 France 1617 78 12612 450
2020-03-22 France 1847 112 14459 562
2020-03-23 France 1559 112 16018 674
2020-03-24 France 3838 186 19856 860
2020-03-25 France 2446 240 22302 1100
2020-03-26 France 2931 231 25233 1331
2020-03-27 France 3922 365 29155 1696
2020-03-28 France 3809 299 32964 1995
2020-03-29 France 4611 319 37575 2314
2020-03-30 France 2599 292 40174 2606
2020-03-31 France 4376 418 44550 3024
2020-04-01 France 7578 499 52128 3523
2020-04-02 France 4861 509 56989 4032
2020-04-03 France 2116 471 59105 4503
2020-04-04 France 5233 2004 64338 6507
2020-04-05 France 4267 1053 68605 7560
2020-04-06 France 1873 518 70478 8078
2020-04-07 France 3912 833 74390 8911
2020-04-08 France 3777 1417 78167 10328
2020-04-09 France 3881 541 82048 10869
2020-04-10 France 4286 1341 86334 12210
2020-04-11 France 4342 987 90676 13197
2020-04-12 France 3114 635 93790 13832
2020-04-13 France 1613 561 95403 14393
2020-04-14 France 2673 574 98076 14967
2020-04-15 France 5497 762 103573 15729
2020-04-16 France 2633 1438 106206 17167
2020-04-17 France 2641 753 108847 17920
2020-04-18 France 405 761 109252 18681
</pre>
<div
class=
"figure"
>
<p><img
src=
"total.png"
alt=
"total.png"
/>
</p>
</div>
</div>
</div>
<div
id=
"outline-container-org2933e83"
class=
"outline-2"
>
<h2
id=
"org2933e83"
><span
class=
"section-number-2"
>
4
</span>
Vers un passage du pic ?
</h2>
<div
class=
"outline-text-2"
id=
"text-4"
>
<p>
On s'intéresse ici à l'atteinte d'un pic du nombre de décès quotidiens liés à
Covid-19. Là encore, l'axe temporel est recalé afin de permettre une
comparaison entre pays : \(t=0\) est positionné au moment où le nombre quotidien
de morts dépasse 15.
</p>
<div
class=
"org-src-container"
>
<pre
class=
"src src-python"
><span
style=
"color: #ff2929;"
>
threshold
</span>
= 15
<span
style=
"color: #ff2929;"
>
daily
</span>
= {}
<span
style=
"color: #729fcf; font-weight: bold;"
>
for
</span>
country
<span
style=
"color: #729fcf; font-weight: bold;"
>
in
</span>
countries:
<span
style=
"color: #ff2929;"
>
daily
</span>
[country] = data_raw.query(f
<span
style=
"color: #de7fa8;"
>
"location == '{country}'
&
new_deaths
>
{threshold}"
</span>
)
daily[countries[2]]
</pre>
</div>
<pre
class=
"example"
>
location new_cases new_deaths total_cases total_deaths
date
2020-03-14 France 785 18 3661 79
2020-03-16 France 924 36 5423 127
2020-03-17 France 1210 21 6633 148
2020-03-18 France 1097 27 7730 175
2020-03-19 France 1404 69 9134 244
2020-03-20 France 1861 128 10995 372
2020-03-21 France 1617 78 12612 450
2020-03-22 France 1847 112 14459 562
2020-03-23 France 1559 112 16018 674
2020-03-24 France 3838 186 19856 860
2020-03-25 France 2446 240 22302 1100
2020-03-26 France 2931 231 25233 1331
2020-03-27 France 3922 365 29155 1696
2020-03-28 France 3809 299 32964 1995
2020-03-29 France 4611 319 37575 2314
2020-03-30 France 2599 292 40174 2606
2020-03-31 France 4376 418 44550 3024
2020-04-01 France 7578 499 52128 3523
2020-04-02 France 4861 509 56989 4032
2020-04-03 France 2116 471 59105 4503
2020-04-04 France 5233 2004 64338 6507
2020-04-05 France 4267 1053 68605 7560
2020-04-06 France 1873 518 70478 8078
2020-04-07 France 3912 833 74390 8911
2020-04-08 France 3777 1417 78167 10328
2020-04-09 France 3881 541 82048 10869
2020-04-10 France 4286 1341 86334 12210
2020-04-11 France 4342 987 90676 13197
2020-04-12 France 3114 635 93790 13832
2020-04-13 France 1613 561 95403 14393
2020-04-14 France 2673 574 98076 14967
2020-04-15 France 5497 762 103573 15729
2020-04-16 France 2633 1438 106206 17167
2020-04-17 France 2641 753 108847 17920
2020-04-18 France 405 761 109252 18681
</pre>
<p>
Le pic observé pour la France au 04/04 (jour 20 sur le graphique) correspond à la prise en compte
instantanée de tous les décès en EHPAD, dont le décompte est disponible à partir
du 01/02 (
<i>
cf.
</i>
<a
href=
"https://www.gouvernement.fr/info-coronavirus/carte-et-donnees"
>
données du gouvernement
</a>
)
</p>
<div
class=
"figure"
>
<p><img
src=
"daily.png"
alt=
"daily.png"
/>
</p>
</div>
</div>
</div>
</div>
<div
id=
"postamble"
class=
"status"
>
<p
class=
"author"
>
Auteur: François Févotte
</p>
<p
class=
"date"
>
Created: 2020-04-19 Sun 00:28
</p>
<p
class=
"validation"
><a
href=
"http://validator.w3.org/check?uri=referer"
>
Validate
</a></p>
</div>
</body>
</html>
module2/exo4/exercice_python_fr.org
View file @
2bd85277
...
@@ -13,6 +13,13 @@
...
@@ -13,6 +13,13 @@
* Identification du système
* Identification du système
#+BEGIN_SRC shell :exports both
date "+%Y-%m-%d"
#+END_SRC
#+RESULTS:
: 2020-04-19
#+BEGIN_SRC shell :exports both
#+BEGIN_SRC shell :exports both
uname -a
uname -a
#+END_SRC
#+END_SRC
...
@@ -53,9 +60,9 @@ l'[[https://www.ecdc.europa.eu/][ECDC]] :
...
@@ -53,9 +60,9 @@ l'[[https://www.ecdc.europa.eu/][ECDC]] :
#+RESULTS:
#+RESULTS:
: location new_cases new_deaths total_cases total_deaths
: location new_cases new_deaths total_cases total_deaths
: date
: date
: 2020-04-15 Zimbabwe 0 0 17 3
: 2020-04-16 Zimbabwe 6 0 23 3
: 2020-04-16 Zimbabwe 6 0 23 3
: 2020-04-17 Zimbabwe 1 0 24 3
: 2020-04-17 Zimbabwe 1 0 24 3
: 2020-04-18 Zimbabwe 0 0 24 3
* Evolution comparée de l'épidémie dans quelques pays
* Evolution comparée de l'épidémie dans quelques pays
...
@@ -146,6 +153,7 @@ date
...
@@ -146,6 +153,7 @@ date
2020-04-15 France 5497 762 103573 15729
2020-04-15 France 5497 762 103573 15729
2020-04-16 France 2633 1438 106206 17167
2020-04-16 France 2633 1438 106206 17167
2020-04-17 France 2641 753 108847 17920
2020-04-17 France 2641 753 108847 17920
2020-04-18 France 405 761 109252 18681
#+end_example
#+end_example
#+BEGIN_SRC python :session :results output file :exports results :var pltfile="total.png"
#+BEGIN_SRC python :session :results output file :exports results :var pltfile="total.png"
...
@@ -222,6 +230,7 @@ date
...
@@ -222,6 +230,7 @@ date
2020-04-15 France 5497 762 103573 15729
2020-04-15 France 5497 762 103573 15729
2020-04-16 France 2633 1438 106206 17167
2020-04-16 France 2633 1438 106206 17167
2020-04-17 France 2641 753 108847 17920
2020-04-17 France 2641 753 108847 17920
2020-04-18 France 405 761 109252 18681
#+end_example
#+end_example
Le pic observé pour la France au 04/04 (jour 20 sur le graphique) correspond à la prise en compte
Le pic observé pour la France au 04/04 (jour 20 sur le graphique) correspond à la prise en compte
...
...
module2/exo4/exercice_python_fr.pdf
View file @
2bd85277
No preview for this file type
module2/exo4/total.png
View replaced file @
26cc1e49
View file @
2bd85277
66.5 KB
|
W:
|
H:
66.5 KB
|
W:
|
H:
2-up
Swipe
Onion skin
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment