#My model to describe the number of Corona cases in Germany, from data in March 2020
#Comparison with the data from JHU github
#Computes the cator of increas for different countries
#Gerald Schuller, April 2020

import numpy as np
import matplotlib.pyplot as plt


#Read data from github:
import urllib.request
import pandas as pd

Retrievedata=True

#Cases
if Retrievedata:
   url = 'https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_confirmed_global.csv'
   urllib.request.urlretrieve(url, './corona_cases.csv')
#('./corona_cases.csv', <http.client.HTTPMessage object at 0x7fc7d89c0f98>)

df = pd.read_csv('./corona_cases.csv')
#df.head()
df=df.drop(['Lat','Long','Province/State'], axis=1)
df=df.set_index('Country/Region')
countries = ['Italy', 'Germany', 'Spain', 'Brazil', 'US', 'Russia','Korea, South']
print("countries=", countries)
data=df.loc[countries,: ]


countrycases=data.loc[countries,'3/31/20':].reset_index(drop=True)
countrycases=np.array(countrycases)
factorsofincrease=countrycases[:,1:]/countrycases[:,:-1] #factor of increase f for each country
plt.plot(factorsofincrease.T)
plt.legend(countries)
plt.xlabel('Day of April')
plt.ylabel('Factor of increase')
plt.grid()
plt.title('Factor of increase to previous day internationally')
#plt.axis([1,31,0, 2])
plt.show()

if Retrievedata:
   url = 'https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_confirmed_US.csv'
   urllib.request.urlretrieve(url, './corona_cases_US.csv')
   
df = pd.read_csv('./corona_cases_US.csv')
#df.head()
#df=df.drop(['Lat','Long_','UID','iso2','iso3','code3','FIPS','Country_Region','Combined_Key'], axis=1)
#df=df.set_index('Admin2','Province_State')
#Places = ['New York', 'New York']
df=df.drop(['Lat','Long_','UID','iso2','iso3','code3','FIPS','Admin2','Province_State','Country_Region'], axis=1)
df=df.set_index('Combined_Key')
Places = ["New York City, New York, US", "San Francisco, California, US", "Los Angeles, California, US","Suffolk, Massachusetts, US"]
print("Places=", Places)
#data=df.loc[Places,: ]
placescases=df.loc[Places,'3/31/20':].reset_index(drop=True)
print("placescases=", placescases)

placescases=np.array(placescases)
factorsofincrease=placescases[:,1:]/placescases[:,:-1] #factor of increase f for each country
plt.plot(factorsofincrease.T)
plt.legend(Places)
plt.xlabel('Day of April')
plt.ylabel('Factor of increase')
plt.grid()
plt.title('Factor of increase to previous day US Cities/Counties')
#plt.axis([1,31,0, 2])
plt.show()

