In [80]:
# Dati a corredo dell'articolo d Sfide Metropolitane: "Firenze - Montelupo Fiorentino, 37.4 km"
# url articolo: https://medium.com/@SfideMetropolitane/firenze-montelupo-fiorentino-37-4-109bb2fcbcb0#.bq7rlsa4t
In [81]:
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline
In [82]:
url_dati_2014 = "http://dati.toscana.it/dataset/rt-movtur-2014"
url_dati_2013 = "http://dati.toscana.it/dataset/rt-movtur"
df_2014 = pd.read_csv ("movimentopercomune2014.csv", sep=";", encoding='latin1', index_col="Comune (denominazione)")
df_2013 = pd.read_csv ("movimentopercomune2013.csv", sep=",", encoding='latin1', index_col="Comune (denominazione)")
In [83]:
df_2014
Out[83]:
In [84]:
# Arrivi e presenze 2014 per provenienza
df_montelupo_2014 = df_2014.loc["Montelupo Fiorentino"]
df_montelupo_2014 = df_montelupo_2014[["Provenienza", "arrivi", "presenze"]]
df_montelupo_2014
Out[84]:
In [85]:
# TOTALE arrivi e presenze 2014
totale_montelupo_2014_totale = df_montelupo_2014.reset_index().groupby("Comune (denominazione)").sum()
totale_montelupo_2014_totale
Out[85]:
In [86]:
df_montelupo_2013 = df_2013.loc["Montelupo Fiorentino"]
df_montelupo_2013 = df_montelupo_2013[["Provenienza", "arrivi", "presenze"]]
df_montelupo_2013
Out[86]:
In [87]:
df_montelupo_2013_totale = df_montelupo_2013[df_montelupo_2013["Provenienza"] == "Totale"]
In [88]:
df_montelupo_2013_totale
Out[88]:
In [89]:
raccordo = dict(zip(df_montelupo_2013.index.unique().tolist(), df_montelupo_2014.index.unique().tolist()))
def dizionario(x):
try:
return raccordo[x]
except:
return ""
df_2013["arrivi"] = df_2013["arrivi"].apply(lambda x: dizionario(x))
In [90]:
df_var = totale_montelupo_2014_totale / df_montelupo_2013_totale *100-100
df_var["arrivi"]
Out[90]:
In [91]:
df_var = totale_montelupo_2014_totale / df_montelupo_2013_totale *100-100
df_var["presenze"]
Out[91]:
In [98]:
#creo una riga con le informazioni relative al totale per il 2014
totale = ["Montelupo Fiorentino", "Totale", df_montelupo_2014["arrivi"].sum(), df_montelupo_2014["presenze"].sum()]
totale
Out[98]:
In [93]:
#la aggancio al dataset di montelupo
df_montelupo_2014 = df_montelupo_2014.reset_index().append(pd.DataFrame(totale, index = ['Comune (denominazione)', "Provenienza", "arrivi", "presenze"]).T)
df_montelupo_2014
Out[93]:
In [94]:
#imposto lo stesso multindex per il 2014 e per il 2013
df_montelupo_2014.set_index(['Comune (denominazione)',"Provenienza"], inplace = True)
df_montelupo_2014
Out[94]:
In [95]:
df_montelupo_2014_multindex = df_montelupo_2014.reset_index().set_index(["Comune (denominazione)", "Provenienza"])
df_montelupo_2014_multindex
Out[95]:
In [96]:
df_montelupo_2013_multindex = df_montelupo_2013.reset_index().set_index(["Comune (denominazione)", "Provenienza"])
df_montelupo_2013_multindex
Out[96]:
In [97]:
#visto che i due dataset hanno lo stesso multiindex è possibile dividere i due dataset direttamente
df_montelupo_2014_multindex / df_montelupo_2013_multindex * 100 - 100
Out[97]:
In [ ]:
In [ ]:
In [ ]: