Aggiornati con cadenza almeno giornaliera della Jhons Hopkins University.
https://github.com/CSSEGISandData/COVID-19/tree/master/csse_covid_19_data

Sorgente Python che permette di elaborare i dati grezzi della Jhons Hopkins University.
La pagina agiornata con le elaborazioni è a questo link
Il sorgente è facilmente modificabile e utilizzabile anche come modulo con i comandi
carica()
elabora(nomenazione)

n = 4000 # numero massimo delle righe processabili
abra = [[0] * 15 for i in range(n)]
cadabra = [[0] * 15 for i in range(n)]
class color:
PURPLE = '\033[95m'
CYAN = '\033[96m'
DARKCYAN = '\033[36m'
BLUE = '\033[94m'
GREEN = '\033[92m'
YELLOW = '\033[93m'
RED = '\033[91m'
BOLD = '\033[1m'
UNDERLINE = '\033[4m'
END = '\033[0m'
def carica():
nomeultimofile = input ("inserisci il nome del file più recente: ")
test=".csv" in nomeultimofile
if test == False:
nomeultimofile=nomeultimofile+".csv"
print ("convertito in "+nomeultimofile+" perchè mancava l'estensione")
nomecomofile = input ("inserisci il nome del file di comparazione: ")
test=".csv" in nomecomofile
if test == False:
nomecomofile=nomecomofile+".csv"
print("convertito in " + nomecomofile + " perchè mancava l'estensione")
filedaaprire = open(nomeultimofile,"r")
filedaaprire1 = open(nomecomofile,"r")
appoggio=""
li=-1
if filedaaprire.readable():
for lines in filedaaprire:
le=-1
li=li+1
z= lines
z=z.replace("\n",",")
for letter in z:
if letter == ",":
le = le + 1
li=li
abra[li][le]=appoggio
appoggio=""
if letter!= ",":
appoggio=appoggio+letter
filedaaprire.close()
print("file più recente: "+nomeultimofile+" acquisite "+str(li)+" linee")
appoggio=""
li=-1
if filedaaprire1.readable():
for lines in filedaaprire1:
le=-1
li=li+1
z= lines
z=z.replace("\n",",")
for letter in z:
if letter == ",":
le = le + 1
li=li
cadabra[li][le]=appoggio
appoggio=""
if letter!= ",":
appoggio=appoggio+letter
filedaaprire1.close()
print("file più recente: "+nomecomofile+" acquisite "+str(li)+" linee")
def analizza(paese):
a = 0
b = 0
confermati = 0
morti = 0
ricoverati = 0
attivi = 0
while a < n:
if abra[a][3] == paese:
confermati = confermati + int(abra[a][7])
morti = morti + int(abra[a][8])
ricoverati = ricoverati + int(abra[a][9])
attivi = attivi + int(abra[a][10])
a = a + 1
confermati1 = 0
morti1 = 0
ricoverati1 = 0
attivi1 = 0
while b < n:
if cadabra[b][3] == paese: confermati1 = confermati1 + int(cadabra[b][7])
morti1 = morti1 + int(cadabra[b][8])
ricoverati1 = ricoverati1 + int(cadabra[b][9])
attivi1 = attivi1 + int(cadabra[b][10])
b = b + 1
print("-------------------------------------")
print(color.BOLD+color.BLUE+paese+color.END)
print("Confermati: " + str(confermati) + "\n ... su periodo precedente: " + str(confermati - confermati1) + " ")
print("Morti : " + str(morti) + "\n ... su periodo precedente: " + str(morti - morti1) + " ")
print("Ricoverati: " + str(ricoverati) + "\n ... su periodo precedente: " + str(ricoverati - ricoverati1) + " ")
print("Attivi : " + str(attivi) + "\n ... su periodo precedente: " + str(attivi - attivi1) + " ")
if float(confermati) > 0:
m = float(morti) / float(confermati)
m = int(m * 10000) / 100
if float(confermati1) > 0:
m1 = float(morti1) / float(confermati1)
m1 = int(m1 * 10000) / 100
if float(confermati-confermati1) > 0:
m2 = float(morti-morti1) / float(confermati-confermati1)
m2 = int(m2 * 10000) / 100
print("\nDecessi su Confermati : " + str(m) + "%\nDecessi su Confermati precedente : "+ str(m1) +"%\nDecessi su Confermati giornalieri: "+ str(m2) +"%")
print("-------------------------------------")
carica()
while 1==1:
print(" ")
print(" ")
print("Comandi disponibili:")
print("Italia, Spagna, USA, Francia, UK, Germania, Cina \n Europa \n Tutto")
print(" ")
comando = input ("inserisci comando: ")
print(" ")
if comando.lower() == "italia" :
analizza("Italy")
if comando.lower() == "spagna":
analizza("Spain")
if comando.lower() == "francia":
analizza("France")
if comando.lower() == "usa":
analizza("US")
if comando.lower() == "cina":
analizza("China")
if comando.lower() == "germania":
analizza("Germany")
if comando.lower() == "uk":
analizza("United Kingdom")
if comando.lower() == "europa":
analizza("Spain")
analizza("Italy")
analizza("Germany")
analizza("France")
analizza("United Kingdom")
if comando.lower() == "tutto":
analizza("US")
analizza("Spain")
analizza("Italy")
analizza("Germany")
analizza("France")
analizza("United Kingdom")
analizza("China")