Compare commits
4 Commits
f4caa7a924
...
a1e212202d
Author | SHA1 | Date |
---|---|---|
Gabriele De Rosa | a1e212202d | |
Gabriele De Rosa | b3acda0edd | |
Gabriele De Rosa | cdc0f990b4 | |
Gabriele De Rosa | 39fc0be135 |
|
@ -9,7 +9,7 @@ RUN apk update --no-cache \
|
||||||
&& apk add --no-cache \
|
&& apk add --no-cache \
|
||||||
tzdata \
|
tzdata \
|
||||||
python3 py3-pip py3-numpy py3-pandas py3-matplotlib \
|
python3 py3-pip py3-numpy py3-pandas py3-matplotlib \
|
||||||
wkhtmltopdf \
|
ttf-liberation qt5-qtwebkit wkhtmltopdf \
|
||||||
# Set UTC as timezone
|
# Set UTC as timezone
|
||||||
&& ln -snf /usr/share/zoneinfo/Europe/Rome /etc/localtime \
|
&& ln -snf /usr/share/zoneinfo/Europe/Rome /etc/localtime \
|
||||||
# Remove tmp files
|
# Remove tmp files
|
||||||
|
|
|
@ -33,33 +33,34 @@
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
<div class="container mt-2 pt-2 px-xl-5" id="content">
|
<div class="container mt-2 pt-2 px-xl-5" id="content">
|
||||||
<h1>Quando torneremo alla normalità?</h1>
|
<h1>🇮🇹 ITA vs. COVID-19 🦠</h1>
|
||||||
<p>
|
<p>
|
||||||
La domanda non ha una risposta precisa.
|
Questo bot è nato durante la pandemia di COVID-19 e, nelle sue prime 2 versioni, mostrava l'andamento della
|
||||||
Non è ancora chiaro
|
vaccinazione in Italia, calcolando una stima sul tempo mancante prima del raggiungimento della cosidetta
|
||||||
quale sia la percentuale della popolazione che deve essere vaccinata per ottenere la cosidetta
|
<i>immunità di gregge</i> o di massa dal virus SARS-Cov-2.
|
||||||
<b>immunità di gregge</b> o di massa dal virus SARS-Cov-2.
|
</p>
|
||||||
Realisticamente, questo numero si aggira intorno all'<b>80% della popolazione</b>
|
<p>
|
||||||
ovvero circa 48 milioni di persone.
|
Con il passare del tempo, l'evoluzione della situazione pandemica e l'aumentare della popolazione vaccinata,
|
||||||
|
il calcolo di questa stima non rappresenta più un dato utile.
|
||||||
|
|
||||||
|
Per questo il bot è stato aggiornato e nella versione corrente mostra l'<b>andamento della vaccinazione in Italia</b>
|
||||||
|
in relazione a ciclo vaccinale primario e dosi booster aggiuntive.
|
||||||
</p>
|
</p>
|
||||||
<h3>Analisi dei dati della campagna vaccinale</h3>
|
<h3>Analisi dei dati della campagna vaccinale</h3>
|
||||||
<p class="mb-2">
|
<p class="mb-2">
|
||||||
La stima qui effettuata indica il tempo che mancherebbe al raggiungimento
|
Le informazioni e i grafici qui presenti sono stati raccolti a partire dalla repository ufficiale pubblica
|
||||||
dell'immunità di gregge qualora si tenesse il ritmo degli ultimi 7 giorni. <br />
|
della pubblica amministrazione.
|
||||||
|
<br />
|
||||||
</p>
|
</p>
|
||||||
<hr>
|
<hr>
|
||||||
<div class="text-center">
|
<div class="text-center">
|
||||||
Continuando di questo passo, raggiungeremo l'immunità di gregge il <br />
|
Le persone che in Italia hanno completato almeno un ciclo vaccinale sono <br />
|
||||||
<span class="text-bigger">
|
<span class="text-bigger">
|
||||||
<!-- hitDate -->
|
<!-- totalVaccinations -->
|
||||||
<span class="d-none d-sm-inline">
|
|
||||||
<!-- hitHour -->
|
|
||||||
</span>
|
|
||||||
</span> <br />
|
</span> <br />
|
||||||
<span style="position: relative; top: -5px">ovvero fra</span> <br />
|
<span style="position: relative; top: -5px">tra le quali quelle che hanno già effettuato la (terza) dose booster sono</span> <br />
|
||||||
<span class="text-bigger" style="position: relative; top: -15px;">
|
<span class="text-bigger" style="position: relative; top: -15px;">
|
||||||
<!-- daysRemaining -->
|
<!-- totalVaccinationsBooster -->
|
||||||
giorni.
|
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<hr>
|
<hr>
|
||||||
|
@ -70,6 +71,13 @@
|
||||||
Dal 21 maggio 2021 sono mostrati due differenti grafici per differenziare
|
Dal 21 maggio 2021 sono mostrati due differenti grafici per differenziare
|
||||||
le prime e le seconde dosi.
|
le prime e le seconde dosi.
|
||||||
</p>
|
</p>
|
||||||
|
<p class="pt-2 notes">
|
||||||
|
Da novembre 2021 i due grafici mostrano rispettivamente i dati del primo ciclo vaccinale e della dose booster.
|
||||||
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<!-- Use twemoji -->
|
||||||
|
<script src="https://twemoji.maxcdn.com/v/latest/twemoji.min.js" crossorigin="anonymous"></script>
|
||||||
|
<script>twemoji.parse(document.body);</script>
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
3
bot.py
3
bot.py
|
@ -67,6 +67,7 @@ def generate(df, target, template):
|
||||||
|
|
||||||
# Get data from df
|
# Get data from df
|
||||||
totalVaccines = sum(df[target])
|
totalVaccines = sum(df[target])
|
||||||
|
totalVaccinesBooster = totalVaccines
|
||||||
lastWeekData = df.loc[df.index > df.index[-1] - td(days=7)]
|
lastWeekData = df.loc[df.index > df.index[-1] - td(days=7)]
|
||||||
vaccinesPerDayAverage = sum(lastWeekData[target]) / 7
|
vaccinesPerDayAverage = sum(lastWeekData[target]) / 7
|
||||||
remainingDays = (HIT - totalVaccines) / vaccinesPerDayAverage
|
remainingDays = (HIT - totalVaccines) / vaccinesPerDayAverage
|
||||||
|
@ -101,6 +102,8 @@ def generate(df, target, template):
|
||||||
for line in f.read().splitlines():
|
for line in f.read().splitlines():
|
||||||
if "<!-- totalVaccinations -->" in line:
|
if "<!-- totalVaccinations -->" in line:
|
||||||
line = f"{totalVaccines}"
|
line = f"{totalVaccines}"
|
||||||
|
elif "<!-- totalVaccinationsBooster -->" in line:
|
||||||
|
line = f"{totalVaccinesBooster}"
|
||||||
elif "<!-- typeVaccinations -->" in line:
|
elif "<!-- typeVaccinations -->" in line:
|
||||||
line = f"{first_or_second}"
|
line = f"{first_or_second}"
|
||||||
elif "<!-- totalVaccinationsPerc -->" in line:
|
elif "<!-- totalVaccinationsPerc -->" in line:
|
||||||
|
|
Loading…
Reference in New Issue