In [19]:
# -*- coding: cp1252 -*-


from mechanize import Browser
import os
import pandas as pd
import html5lib
from bs4 import BeautifulSoup  


#os.chdir(r"E:\Dropbox\Dropbox\0_DB\A_Elaborazioni\Coeweb")

class coeweb(object):
    
    def __init__(self, link):
        self.pandas_db = pd.DataFrame()
        self.link = link
        br = Browser()
        br.open(self.link)
        br.select_form(nr=0)
        
        self.paesi = []
        self.paesi_descizione = []
        control = br.form.find_control("PAESE")
        if control.type == "select":  
            for item in control.items:
                self.paesi.append(item.name)
                self.paesi_descizione.append((item.name, str([label.text  for label in item.get_labels()])))
                
        self.territori = []
        self.territori_descrizione = []
        control = br.form.find_control("CODTERRITORIO")
        if control.type == "select":  
            for item in control.items:
                self.territori.append((item.name, str([label.text  for label in item.get_labels()])))
                self.territori_descrizione.append((item.name, str([label.text  for label in item.get_labels()])))
                
        self.anni = []
        control = br.form.find_control("ANNO")
        if control.type == "select":  
            for item in control.items:
                self.anni.append((item.name, str([label.text  for label in item.get_labels()])))
        self.mese = []
        control = br.form.find_control("MESE")
        if control.type == "select": 
            for item in control.items:
                self.mese.append((item.name, str([label.text  for label in item.get_labels()])))
        self.cumulato = []
        control = br.form.find_control("TIPOVALORE")
        for item in control.items:
            self.cumulato.append((item.name, str([label.text  for label in item.get_labels()])))
        
        self.bric = ['508', '720', '664', '75']
        #[('508', "['508 - Brasile']"), ('720', "['720 - Cina']"), ('664', "['664 - India']"), ('75', "['75 - Russia']")]
    
    def convert_string_euro(self,x):
        '''questa funzione rimuove la formattazione dei numeri di coeweb, trasformando il testo in numeri'''
        try: 
            return float(x.replace(".", ""))
        except:
            pass
    

    def scarica_uno(self, territorio = ["309048"], paese = ["1033"], cumulato = ['M'], anno = ["2013"], mese = ["4"]  ):# , paese, anno, trimestre, modalita)
        
        br = Browser()
        br.open(self.link)

        br.select_form(nr=0)

        control_territorio = br.form.find_control("CODTERRITORIO")
        br[control_territorio.name] = territorio #["309048"]

        control_paese = br.form.find_control("PAESE")
        br[control_paese.name] = paese #["309048"]

        control_anno = br.form.find_control("ANNO")
        br[control_anno.name] = anno #["309048"]

        control_mese = br.form.find_control("MESE")
        br[control_mese.name] = mese #["309048"]

        control_cumulato = br.form.find_control("TIPOVALORE")
        br[control_cumulato.name] = cumulato #["309048"]

        nome_stringa = territorio[0] + "_" + paese[0] + "_" + anno[0] + "_" + mese[0] + "_" + cumulato[0]


        response = br.submit()
        out_file = open(os.path.join(os.getcwd(), "scaricati", nome_stringa +".html"), "w")
        out_file.write(response.read()) 
        out_file.close()
        #os.system("start " + nome_stringa +".html")
        self.dati = pd.read_html(os.path.join(os.getcwd(), "scaricati", nome_stringa +".html"), header= 0, index_col=0, encoding = "cp1252")#'utf8'
        #os.remove(territorio[0] +".html")
        print "download_" + nome_stringa
        br.close()
        return self.dati
        
        # i dati dovrebbero essere raccolti in un pandas 
        
    def scarica_molti(self, territorio = ["309048"],   lista_paesi = None, lista_anni = None, lista_mesi = None, lista_cumulato = ["M"]):
        ''' questa funzione permette di scaricare per uno o più territori uno o più settori, per uno o più periodi di tempo'''
        #self.pandas_db = pd.DataFrame()
        
        def nome_paese(dati, codice):
            for item in dati:
                if item[0] == codice:
                    pulito1= item[1].split("'",)[1]
                    pulito2 = pulito1.split(" - ",)[1]
                    print pulito2
                    return pulito2
        
        def nome_territorio(dati, codice):
            for item in dati:
                if item[0] == codice:
                    try:
                        pulito1= item[1].split("'")[1]
                        pulito1 = pulito1.replace("-","")
                        pulito1 = pulito1.replace("'","")
                        return pulito1
                    except:
                        pass
        
        
        for item_territori in territorio:
            for item_paesi in lista_paesi:
                for item_anni in lista_anni:
                    for item_mesi in lista_mesi:

                        dataset =  self.scarica_uno([item_territori], paese = [str(item_paesi)],  anno = [str(item_anni)], mese = [str(item_mesi)], cumulato = lista_cumulato)
                        dataset = dataset[1]#.set_index(territorio, str(item_paesi), str(item_anni), str(item_mesi)])
                        
                        
                        dataset["territorio"] = nome_territorio(self.territori_descrizione,  item_territori)  
                        #dataset["territorio"] = item_territori
                        
                        #nome_paese(self.paesi_descizione, str(item_paesi))
                        dataset["paese"] = nome_paese(self.paesi_descizione, str(item_paesi))
                        dataset["anno"] = str(item_anni)
                        dataset["mese"] = str(item_mesi)
                        dataset["cumulato"] = lista_cumulato[0]
                        dataset.set_index(["territorio","paese","anno","mese","cumulato"], append = True, inplace = True)
                        dataset["DATI EXPORT"] = dataset["EXP" + str(item_anni)]
                          
                        
                        
                        dataset = dataset["DATI EXPORT"].apply(lambda x: self.convert_string_euro(x))
                        
                        
                        
                        # datasetcompleto
                        self.pandas_db = pd.concat([self.pandas_db, pd.DataFrame(dataset)])
                        # settori ateco disponibili
                        self.pandas_db.settori = set(self.pandas_db.reset_index()["Divisioni"])
                        
                            #print "errore_" + territorio[0] + "_" + str(item_paesi) + "_" + str(item_anni) + "_" + str(item_mesi) + "_" + lista_cumulato[0]

        for scaricato in os.listdir(os.path.join(os.getcwd(), "scaricati")):
            os.remove(os.path.join(os.getcwd(), "scaricati", scaricato))
        

        print "eseguito"
    
    
    
    def analizza_settori(self, settori, interpolazione = "no"):
        ''' questa funzione restituisce un dataframe e un dizionario contenente le serie storiche per i settori inseriti come argomento [lista]. 
        Effettua anche l'interpolazione dei dati mancanti'''
        self.dict_settore = {}
        for item in settori:
            dati_settore = self.pandas_db.xs(item, level=0)
            if interpolazione == "yes":
                dati_settore["DATI EXPORT"] = dati_settore["DATI EXPORT"].apply(lambda x: convert_string_euro(x)).interpolate()
            else:
                dati_settore["DATI EXPORT"] = dati_settore["DATI EXPORT"].apply(lambda x: convert_string_euro(x))
            self.dict_settore[item] = dati_settore["DATI EXPORT"]
        self.dataframe_settori = pd.DataFrame(self.dict_settore)
        return self.dataframe_settori

In [20]:
def convert_string_euro(x):
    try: 
        return float(x.replace(".", ""))
    except:
        pass

In [ ]:


In [21]:
os.getcwd()


Out[21]:
'e:\\Dropbox\\Dropbox\\0_DB\\coeweb'

In [22]:
lista_anni = [str(i) for i in range(2009,2016)]

In [97]:
lista_anni


Out[97]:
['2009', '2010', '2011', '2012', '2013', '2014', '2015']

In [23]:
Firenze = coeweb("http://www.coeweb.istat.it/predefinite/tutto_paese_merce.asp?livello=ATE07_AT2&riga=MERCE&territorio=S&AG=S")

In [ ]:


In [24]:
metropolitana = [('309', "['---Toscana']"),
 ('309047', "['------Pistoia']"),
 ('309048', "['------Firenze']"),
 ('309100', "['------Prato']")]

In [25]:
CodiciMetropolitana = []
for item in metropolitana:
    CodiciMetropolitana.append(item[0])

In [90]:
CodiciMetropolitana


Out[90]:
['309', '309047', '309048', '309100']

In [26]:
Firenze.scarica_molti(territorio = CodiciMetropolitana, lista_paesi = ['6'], lista_anni = lista_anni, lista_mesi = ["9"], lista_cumulato = ['C'])


download_309_6_2009_9_C
Regno Unito
download_309_6_2010_9_C
Regno Unito
download_309_6_2011_9_C
Regno Unito
download_309_6_2012_9_C
Regno Unito
download_309_6_2013_9_C
Regno Unito
download_309_6_2014_9_C
Regno Unito
download_309_6_2015_9_C
Regno Unito
download_309047_6_2009_9_C
Regno Unito
download_309047_6_2010_9_C
Regno Unito
download_309047_6_2011_9_C
Regno Unito
download_309047_6_2012_9_C
Regno Unito
download_309047_6_2013_9_C
Regno Unito
download_309047_6_2014_9_C
Regno Unito
download_309047_6_2015_9_C
Regno Unito
download_309048_6_2009_9_C
Regno Unito
download_309048_6_2010_9_C
Regno Unito
download_309048_6_2011_9_C
Regno Unito
download_309048_6_2012_9_C
Regno Unito
download_309048_6_2013_9_C
Regno Unito
download_309048_6_2014_9_C
Regno Unito
download_309048_6_2015_9_C
Regno Unito
download_309100_6_2009_9_C
Regno Unito
download_309100_6_2010_9_C
Regno Unito
download_309100_6_2011_9_C
Regno Unito
download_309100_6_2012_9_C
Regno Unito
download_309100_6_2013_9_C
Regno Unito
download_309100_6_2014_9_C
Regno Unito
download_309100_6_2015_9_C
Regno Unito
eseguito

In [27]:
dati_toscana_completi = Firenze.pandas_db

In [71]:
dati_toscana_completi = dati_toscana_completi.reset_index()

In [86]:
dati_toscana_completi["anno"] = pd.to_datetime(dati_toscana_completi.anno, format="%Y")

In [87]:
dati_toscana_completi.drop(["paese", "mese", "cumulato"], axis = 1, inplace = True)


---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-87-162be82cd0c0> in <module>()
----> 1 dati_toscana_completi.drop(["paese", "mese", "cumulato"], axis = 1, inplace = True)

c:\Users\SANTECH\Anaconda\lib\site-packages\pandas\core\generic.pyc in drop(self, labels, axis, level, inplace, errors)
   1871                 new_axis = axis.drop(labels, level=level, errors=errors)
   1872             else:
-> 1873                 new_axis = axis.drop(labels, errors=errors)
   1874             dropped = self.reindex(**{axis_name: new_axis})
   1875             try:

c:\Users\SANTECH\Anaconda\lib\site-packages\pandas\indexes\base.pyc in drop(self, labels, errors)
   2964             if errors != 'ignore':
   2965                 raise ValueError('labels %s not contained in axis' %
-> 2966                                  labels[mask])
   2967             indexer = indexer[~mask]
   2968         return self.delete(indexer)

ValueError: labels ['paese' 'mese' 'cumulato'] not contained in axis

In [85]:



Out[85]:
0     2009-01-01
1     2009-01-01
2     2009-01-01
3     2009-01-01
4     2009-01-01
5     2009-01-01
6     2009-01-01
7     2009-01-01
8     2009-01-01
9     2009-01-01
10    2009-01-01
11    2009-01-01
12    2009-01-01
13    2009-01-01
14    2009-01-01
15    2009-01-01
16    2009-01-01
17    2009-01-01
18    2009-01-01
19    2009-01-01
20    2009-01-01
21    2009-01-01
22    2009-01-01
23    2009-01-01
24    2009-01-01
25    2009-01-01
26    2009-01-01
27    2009-01-01
28    2009-01-01
29    2009-01-01
         ...    
941   2015-01-01
942   2015-01-01
943   2015-01-01
944   2015-01-01
945   2015-01-01
946   2015-01-01
947   2015-01-01
948   2015-01-01
949   2015-01-01
950   2015-01-01
951   2015-01-01
952   2015-01-01
953   2015-01-01
954   2015-01-01
955   2015-01-01
956   2015-01-01
957   2015-01-01
958   2015-01-01
959   2015-01-01
960   2015-01-01
961   2015-01-01
962   2015-01-01
963   2015-01-01
964   2015-01-01
965   2015-01-01
966   2015-01-01
967   2015-01-01
968   2015-01-01
969   2015-01-01
970   2015-01-01
Name: anno, dtype: datetime64[ns]

In [88]:
dati_toscana_completi.to_excel("dati_metropolitana_completi.xlsx")

In [29]:
Firenze


Out[29]:
<__main__.coeweb at 0xad04ba8>

In [34]:
serie_storica = dati_toscana_completi[dati_toscana_completi.index.get_level_values('Divisioni').isin(['Totale'])].unstack("anno")

In [41]:
#["2015"]


Out[41]:
Divisioni  territorio  paese        mese  cumulato
Totale     Firenze     Regno Unito  9     C           5.816399e+08
           Pistoia     Regno Unito  9     C           1.242330e+08
           Prato       Regno Unito  9     C           1.427064e+08
           Toscana     Regno Unito  9     C           1.802210e+09
Name: 2015, dtype: float64

In [58]:
%matplotlib inline

serie_storica["DATI EXPORT"].divide(serie_storica["DATI EXPORT"]["2009"], axis = 0) * 100


Out[58]:
anno 2009 2010 2011 2012 2013 2014 2015
Divisioni territorio paese mese cumulato
Totale Firenze Regno Unito 9 C 100.0 124.888999 115.685097 124.545145 176.578336 184.469509 200.457805
Pistoia Regno Unito 9 C 100.0 117.163396 122.527492 114.321328 123.339313 129.887862 145.614288
Prato Regno Unito 9 C 100.0 139.286136 132.357143 110.313583 114.053888 135.769640 173.755019
Toscana Regno Unito 9 C 100.0 96.364468 99.402493 97.228852 105.662722 110.345702 117.888034

In [89]:
Italia = coeweb("http://www.coeweb.istat.it/predefinite/tutto_paese_merce.asp?livello=ATE07_AT2&riga=MERCE&territorio=S&AG=S")

In [99]:
italia_province = []
for item in Italia.territori:
    if len(item[0]) == 6:
        italia_province.append(item[0])

In [137]:
#italia_province

In [101]:
Italia.scarica_molti(territorio = italia_province, lista_paesi = ['6'], lista_anni = ["2015"], lista_mesi = ["9"], lista_cumulato = ['C'])


download_101001_6_2015_9_C
Regno Unito
download_101002_6_2015_9_C
Regno Unito
download_101003_6_2015_9_C
Regno Unito
download_101004_6_2015_9_C
Regno Unito
download_101005_6_2015_9_C
Regno Unito
download_101006_6_2015_9_C
Regno Unito
download_101096_6_2015_9_C
Regno Unito
download_101103_6_2015_9_C
Regno Unito
download_102007_6_2015_9_C
Regno Unito
download_103012_6_2015_9_C
Regno Unito
download_103013_6_2015_9_C
Regno Unito
download_103014_6_2015_9_C
Regno Unito
download_103015_6_2015_9_C
Regno Unito
download_103016_6_2015_9_C
Regno Unito
download_103017_6_2015_9_C
Regno Unito
download_103018_6_2015_9_C
Regno Unito
download_103019_6_2015_9_C
Regno Unito
download_103020_6_2015_9_C
Regno Unito
download_103097_6_2015_9_C
Regno Unito
download_103098_6_2015_9_C
Regno Unito
download_103108_6_2015_9_C
Regno Unito
download_107008_6_2015_9_C
Regno Unito
download_107009_6_2015_9_C
Regno Unito
download_107010_6_2015_9_C
Regno Unito
download_107011_6_2015_9_C
Regno Unito
download_204021_6_2015_9_C
Regno Unito
download_204022_6_2015_9_C
Regno Unito
download_205023_6_2015_9_C
Regno Unito
download_205024_6_2015_9_C
Regno Unito
download_205025_6_2015_9_C
Regno Unito
download_205026_6_2015_9_C
Regno Unito
download_205027_6_2015_9_C
Regno Unito
download_205028_6_2015_9_C
Regno Unito
download_205029_6_2015_9_C
Regno Unito
download_206030_6_2015_9_C
Regno Unito
download_206031_6_2015_9_C
Regno Unito
download_206032_6_2015_9_C
Regno Unito
download_206093_6_2015_9_C
Regno Unito
download_208033_6_2015_9_C
Regno Unito
download_208034_6_2015_9_C
Regno Unito
download_208035_6_2015_9_C
Regno Unito
download_208036_6_2015_9_C
Regno Unito
download_208037_6_2015_9_C
Regno Unito
download_208038_6_2015_9_C
Regno Unito
download_208039_6_2015_9_C
Regno Unito
download_208040_6_2015_9_C
Regno Unito
download_208099_6_2015_9_C
Regno Unito
download_309045_6_2015_9_C
Regno Unito
download_309046_6_2015_9_C
Regno Unito
download_309047_6_2015_9_C
Regno Unito
download_309048_6_2015_9_C
Regno Unito
download_309049_6_2015_9_C
Regno Unito
download_309050_6_2015_9_C
Regno Unito
download_309051_6_2015_9_C
Regno Unito
download_309052_6_2015_9_C
Regno Unito
download_309053_6_2015_9_C
Regno Unito
download_309100_6_2015_9_C
Regno Unito
download_310054_6_2015_9_C
Regno Unito
download_310055_6_2015_9_C
Regno Unito
download_311041_6_2015_9_C
Regno Unito
download_311042_6_2015_9_C
Regno Unito
download_311043_6_2015_9_C
Regno Unito
download_311044_6_2015_9_C
Regno Unito
download_311109_6_2015_9_C
Regno Unito
download_312056_6_2015_9_C
Regno Unito
download_312057_6_2015_9_C
Regno Unito
download_312058_6_2015_9_C
Regno Unito
download_312059_6_2015_9_C
Regno Unito
download_312060_6_2015_9_C
Regno Unito
download_413066_6_2015_9_C
Regno Unito
download_413067_6_2015_9_C
Regno Unito
download_413068_6_2015_9_C
Regno Unito
download_413069_6_2015_9_C
Regno Unito
download_414070_6_2015_9_C
Regno Unito
download_414094_6_2015_9_C
Regno Unito
download_415061_6_2015_9_C
Regno Unito
download_415062_6_2015_9_C
Regno Unito
download_415063_6_2015_9_C
Regno Unito
download_415064_6_2015_9_C
Regno Unito
download_415065_6_2015_9_C
Regno Unito
download_416071_6_2015_9_C
Regno Unito
download_416072_6_2015_9_C
Regno Unito
download_416073_6_2015_9_C
Regno Unito
download_416074_6_2015_9_C
Regno Unito
download_416075_6_2015_9_C
Regno Unito
download_416110_6_2015_9_C
Regno Unito
download_417076_6_2015_9_C
Regno Unito
download_417077_6_2015_9_C
Regno Unito
download_418078_6_2015_9_C
Regno Unito
download_418079_6_2015_9_C
Regno Unito
download_418080_6_2015_9_C
Regno Unito
download_418101_6_2015_9_C
Regno Unito
download_418102_6_2015_9_C
Regno Unito
download_519081_6_2015_9_C
Regno Unito
download_519082_6_2015_9_C
Regno Unito
download_519083_6_2015_9_C
Regno Unito
download_519084_6_2015_9_C
Regno Unito
download_519085_6_2015_9_C
Regno Unito
download_519086_6_2015_9_C
Regno Unito
download_519087_6_2015_9_C
Regno Unito
download_519088_6_2015_9_C
Regno Unito
download_519089_6_2015_9_C
Regno Unito
download_520090_6_2015_9_C
Regno Unito
download_520091_6_2015_9_C
Regno Unito
download_520092_6_2015_9_C
Regno Unito
download_520095_6_2015_9_C
Regno Unito
download_520104_6_2015_9_C
Regno Unito
download_520105_6_2015_9_C
Regno Unito
download_520106_6_2015_9_C
Regno Unito
download_520107_6_2015_9_C
Regno Unito
download_697198_6_2015_9_C
Regno Unito
download_697199_6_2015_9_C
Regno Unito
download_697199_6_2015_9_C
Regno Unito
eseguito

In [103]:
Italia_df = Italia.pandas_db

In [106]:
Italia_df = Italia_df.reset_index()

In [141]:
key = pd.read_excel("aggancio_nuts_ok.xlsx")

In [143]:
key


Out[143]:
COEWEB NUTS NUTS_MAP EUROSTAT
0 Torino ITC11 ITC11 Torino
1 Vercelli ITC12 ITC12 Vercelli
2 Biella ITC13 ITC13 Biella
3 VerbanoCusioOssola ITC14 ITC14 Verbano-Cusio-Ossola
4 Novara ITC15 ITC15 Novara
5 Cuneo ITC16 ITC16 Cuneo
6 Asti ITC17 ITC17 Asti
7 Alessandria ITC18 ITC18 Alessandria
8 Aosta ITC20 ITC20 Valle d'Aosta/Vallée d'Aoste
9 Imperia ITC31 ITC31 Imperia
10 Savona ITC32 ITC32 Savona
11 Genova ITC33 ITC33 Genova
12 La Spezia ITC34 ITC34 La Spezia
13 Varese ITC41 ITC41 Varese
14 Como ITC42 ITC42 Como
15 Lecco ITC43 ITC43 Lecco
16 Sondrio ITC44 ITC44 Sondrio
17 Milano ITC45 ITC45 Milano
18 Bergamo ITC46 ITC46 Bergamo
19 Brescia ITC47 ITC47 Brescia
20 Pavia ITC48 ITC48 Pavia
21 Lodi ITC49 ITC49 Lodi
22 Cremona ITC4A ITC4A Cremona
23 Mantova ITC4B ITC4B Mantova
24 Bolzano/Bozen ITD10 ITD10 Bolzano-Bozen
25 Trento ITD20 ITD20 Trento
26 Verona ITD31 ITD31 Verona
27 Vicenza ITD32 ITD32 Vicenza
28 Belluno ITD33 ITD33 Belluno
29 Treviso ITD34 ITD34 Treviso
... ... ... ... ...
84 Matera ITF52 ITF52 Matera
85 Cosenza ITF61 ITF61 Cosenza
86 Crotone ITF62 ITF62 Crotone
87 Catanzaro ITF63 ITF63 Catanzaro
88 Vibo Valentia ITF64 ITF64 Vibo Valentia
89 Reggio di Calabria ITF65 ITF65 Reggio di Calabria
90 Trapani ITG11 ITG11 Trapani
91 Palermo ITG12 ITG12 Palermo
92 Messina ITG13 ITG13 Messina
93 Agrigento ITG14 ITG14 Agrigento
94 Caltanissetta ITG15 ITG15 Caltanissetta
95 Enna ITG16 ITG16 Enna
96 Catania ITG17 ITG17 Catania
97 Ragusa ITG18 ITG18 Ragusa
98 Siracusa ITG19 ITG19 Siracusa
99 Sassari ITG25 ITG25 Sassari
100 Nuoro ITG26 ITG26 Nuoro
101 Cagliari ITG27 ITG27 Cagliari
102 Oristano ITG28 ITG28 Oristano
103 OlbiaTempio ITG29 ITG29 Olbia-Tempio
104 Ogliastra ITG2A ITG2A Ogliastra
105 Medio Campidano ITG2B ITG2B Medio Campidano
106 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
107 Extra-Regio ITZZZ ITZZZ Extra-Regio
108 Nord-Est ITH ITH Nord-Est
109 Provincia Autonoma di Bolzano/Bozen ITH1 ITH1 Provincia Autonoma di Bolzano/Bozen
110 Provincia Autonoma di Trento ITH2 ITH2 Provincia Autonoma di Trento
111 Veneto ITH3 ITH3 Veneto
112 Friuli-Venezia Giulia ITH4 ITH4 Friuli-Venezia Giulia
113 Emilia"] ITH5 ITH5 Emilia-Romagna

114 rows × 4 columns


In [146]:
pd.merge(Italia_df, key, left_on = "territorio", right_on ="COEWEB")


Out[146]:
Divisioni territorio paese anno mese cumulato DATI EXPORT COEWEB NUTS NUTS_MAP EUROSTAT
0 AA01-Prodotti agricoli, animali e della caccia Torino Regno Unito 2015 9 C 100882.0 Torino ITC11 ITC11 Torino
1 AA02-Prodotti della silvicoltura Torino Regno Unito 2015 9 C 0.0 Torino ITC11 ITC11 Torino
2 AA03-Prodotti della pesca e dell'acquacoltura Torino Regno Unito 2015 9 C 15.0 Torino ITC11 ITC11 Torino
3 BB06-Petrolio greggio e gas naturale Torino Regno Unito 2015 9 C 0.0 Torino ITC11 ITC11 Torino
4 BB07-Minerali metalliferi Torino Regno Unito 2015 9 C 0.0 Torino ITC11 ITC11 Torino
5 BB08-Altri minerali da cave e miniere Torino Regno Unito 2015 9 C 748679.0 Torino ITC11 ITC11 Torino
6 CA10-Prodotti alimentari Torino Regno Unito 2015 9 C 40508394.0 Torino ITC11 ITC11 Torino
7 CA11-Bevande Torino Regno Unito 2015 9 C 13871997.0 Torino ITC11 ITC11 Torino
8 CA12-Tabacco Torino Regno Unito 2015 9 C 305.0 Torino ITC11 ITC11 Torino
9 CB13-Prodotti tessili Torino Regno Unito 2015 9 C 13542354.0 Torino ITC11 ITC11 Torino
10 CB14-Articoli di abbigliamento (anche in pelle... Torino Regno Unito 2015 9 C 8052028.0 Torino ITC11 ITC11 Torino
11 CB15-Articoli in pelle (escluso abbigliamento)... Torino Regno Unito 2015 9 C 2278300.0 Torino ITC11 ITC11 Torino
12 CC16-Legno e prodotti in legno e sughero (escl... Torino Regno Unito 2015 9 C 309554.0 Torino ITC11 ITC11 Torino
13 CC17-Carta e prodotti di carta Torino Regno Unito 2015 9 C 13794287.0 Torino ITC11 ITC11 Torino
14 CC18-Prodotti della stampa e della riproduzion... Torino Regno Unito 2015 9 C 0.0 Torino ITC11 ITC11 Torino
15 CD19-Coke e prodotti derivanti dalla raffinazi... Torino Regno Unito 2015 9 C 2452060.0 Torino ITC11 ITC11 Torino
16 CE20-Prodotti chimici Torino Regno Unito 2015 9 C 46732050.0 Torino ITC11 ITC11 Torino
17 CF21-Prodotti farmaceutici di base e preparati... Torino Regno Unito 2015 9 C 43463.0 Torino ITC11 ITC11 Torino
18 CG22-Articoli in gomma e materie plastiche Torino Regno Unito 2015 9 C 41661081.0 Torino ITC11 ITC11 Torino
19 CG23-Altri prodotti della lavorazione di miner... Torino Regno Unito 2015 9 C 8862396.0 Torino ITC11 ITC11 Torino
20 CH24-Prodotti della metallurgia Torino Regno Unito 2015 9 C 5732471.0 Torino ITC11 ITC11 Torino
21 CH25-Prodotti in metallo, esclusi macchinari e... Torino Regno Unito 2015 9 C 26267122.0 Torino ITC11 ITC11 Torino
22 CI26-Computer e prodotti di elettronica e otti... Torino Regno Unito 2015 9 C 39353827.0 Torino ITC11 ITC11 Torino
23 CJ27-Apparecchiature elettriche e apparecchiat... Torino Regno Unito 2015 9 C 158892551.0 Torino ITC11 ITC11 Torino
24 CK28-Macchinari e apparecchiature nca Torino Regno Unito 2015 9 C 143860889.0 Torino ITC11 ITC11 Torino
25 CL29-Autoveicoli, rimorchi e semirimorchi Torino Regno Unito 2015 9 C 273476075.0 Torino ITC11 ITC11 Torino
26 CL30-Altri mezzi di trasporto Torino Regno Unito 2015 9 C 139153767.0 Torino ITC11 ITC11 Torino
27 CM31-Mobili Torino Regno Unito 2015 9 C 2224327.0 Torino ITC11 ITC11 Torino
28 CM32-Prodotti delle altre industrie manifattur... Torino Regno Unito 2015 9 C 21667924.0 Torino ITC11 ITC11 Torino
29 EE38-Prodotti delle attivitŕ di raccolta, trat... Torino Regno Unito 2015 9 C 48378.0 Torino ITC11 ITC11 Torino
... ... ... ... ... ... ... ... ... ... ... ...
3217 CH24-Prodotti della metallurgia Ogliastra Regno Unito 2015 9 C NaN Ogliastra ITG2A ITG2A Ogliastra
3218 CH25-Prodotti in metallo, esclusi macchinari e... Ogliastra Regno Unito 2015 9 C NaN Ogliastra ITG2A ITG2A Ogliastra
3219 CI26-Computer e prodotti di elettronica e otti... Ogliastra Regno Unito 2015 9 C NaN Ogliastra ITG2A ITG2A Ogliastra
3220 CJ27-Apparecchiature elettriche e apparecchiat... Ogliastra Regno Unito 2015 9 C NaN Ogliastra ITG2A ITG2A Ogliastra
3221 CK28-Macchinari e apparecchiature nca Ogliastra Regno Unito 2015 9 C NaN Ogliastra ITG2A ITG2A Ogliastra
3222 CM32-Prodotti delle altre industrie manifattur... Ogliastra Regno Unito 2015 9 C NaN Ogliastra ITG2A ITG2A Ogliastra
3223 Totale Ogliastra Regno Unito 2015 9 C NaN Ogliastra ITG2A ITG2A Ogliastra
3224 NaN Ogliastra Regno Unito 2015 9 C NaN Ogliastra ITG2A ITG2A Ogliastra
3225 CA10-Prodotti alimentari CarboniaIglesias Regno Unito 2015 9 C 0.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3226 CA11-Bevande CarboniaIglesias Regno Unito 2015 9 C 218272.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3227 CB13-Prodotti tessili CarboniaIglesias Regno Unito 2015 9 C 0.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3228 CB14-Articoli di abbigliamento (anche in pelle... CarboniaIglesias Regno Unito 2015 9 C 22.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3229 CB15-Articoli in pelle (escluso abbigliamento)... CarboniaIglesias Regno Unito 2015 9 C 0.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3230 CC16-Legno e prodotti in legno e sughero (escl... CarboniaIglesias Regno Unito 2015 9 C 0.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3231 CC17-Carta e prodotti di carta CarboniaIglesias Regno Unito 2015 9 C 0.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3232 CD19-Coke e prodotti derivanti dalla raffinazi... CarboniaIglesias Regno Unito 2015 9 C 0.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3233 CE20-Prodotti chimici CarboniaIglesias Regno Unito 2015 9 C 0.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3234 CG22-Articoli in gomma e materie plastiche CarboniaIglesias Regno Unito 2015 9 C 0.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3235 CG23-Altri prodotti della lavorazione di miner... CarboniaIglesias Regno Unito 2015 9 C 59751.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3236 CH24-Prodotti della metallurgia CarboniaIglesias Regno Unito 2015 9 C 0.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3237 CH25-Prodotti in metallo, esclusi macchinari e... CarboniaIglesias Regno Unito 2015 9 C 8462288.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3238 CI26-Computer e prodotti di elettronica e otti... CarboniaIglesias Regno Unito 2015 9 C 0.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3239 CJ27-Apparecchiature elettriche e apparecchiat... CarboniaIglesias Regno Unito 2015 9 C 0.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3240 CK28-Macchinari e apparecchiature nca CarboniaIglesias Regno Unito 2015 9 C 0.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3241 CL29-Autoveicoli, rimorchi e semirimorchi CarboniaIglesias Regno Unito 2015 9 C 0.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3242 CM31-Mobili CarboniaIglesias Regno Unito 2015 9 C 0.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3243 CM32-Prodotti delle altre industrie manifattur... CarboniaIglesias Regno Unito 2015 9 C 0.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3244 JA58-Prodotti delle attivitŕ editoriali CarboniaIglesias Regno Unito 2015 9 C 0.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3245 Totale CarboniaIglesias Regno Unito 2015 9 C 8740333.0 CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias
3246 NaN CarboniaIglesias Regno Unito 2015 9 C NaN CarboniaIglesias ITG2C ITG2C Carbonia-Iglesias

3247 rows × 11 columns


In [115]:
Italia_df[Italia_df["Divisioni"] == "Totale"].sort_values("DATI EXPORT", ascending = False).to_excel("classifica.xlsx")#["territorio"].unique()

In [138]:
#Italia_df[Italia_df["Divisioni"] == "Totale"].sort_values("DATI EXPORT", ascending = False)

In [128]:
Divisioni = Italia_df.groupby("Divisioni").sum()

In [ ]:
Divisioni.drop("Totale",axis =0, inplace = True)

In [132]:
Divisioni["%"] = Divisioni["DATI EXPORT"] / Divisioni["DATI EXPORT"].sum() * 100 #

In [142]:
Italia_df


Out[142]:
Divisioni territorio paese anno mese cumulato DATI EXPORT
0 AA01-Prodotti agricoli, animali e della caccia Torino Regno Unito 2015 9 C 100882.0
1 AA02-Prodotti della silvicoltura Torino Regno Unito 2015 9 C 0.0
2 AA03-Prodotti della pesca e dell'acquacoltura Torino Regno Unito 2015 9 C 15.0
3 BB06-Petrolio greggio e gas naturale Torino Regno Unito 2015 9 C 0.0
4 BB07-Minerali metalliferi Torino Regno Unito 2015 9 C 0.0
5 BB08-Altri minerali da cave e miniere Torino Regno Unito 2015 9 C 748679.0
6 CA10-Prodotti alimentari Torino Regno Unito 2015 9 C 40508394.0
7 CA11-Bevande Torino Regno Unito 2015 9 C 13871997.0
8 CA12-Tabacco Torino Regno Unito 2015 9 C 305.0
9 CB13-Prodotti tessili Torino Regno Unito 2015 9 C 13542354.0
10 CB14-Articoli di abbigliamento (anche in pelle... Torino Regno Unito 2015 9 C 8052028.0
11 CB15-Articoli in pelle (escluso abbigliamento)... Torino Regno Unito 2015 9 C 2278300.0
12 CC16-Legno e prodotti in legno e sughero (escl... Torino Regno Unito 2015 9 C 309554.0
13 CC17-Carta e prodotti di carta Torino Regno Unito 2015 9 C 13794287.0
14 CC18-Prodotti della stampa e della riproduzion... Torino Regno Unito 2015 9 C 0.0
15 CD19-Coke e prodotti derivanti dalla raffinazi... Torino Regno Unito 2015 9 C 2452060.0
16 CE20-Prodotti chimici Torino Regno Unito 2015 9 C 46732050.0
17 CF21-Prodotti farmaceutici di base e preparati... Torino Regno Unito 2015 9 C 43463.0
18 CG22-Articoli in gomma e materie plastiche Torino Regno Unito 2015 9 C 41661081.0
19 CG23-Altri prodotti della lavorazione di miner... Torino Regno Unito 2015 9 C 8862396.0
20 CH24-Prodotti della metallurgia Torino Regno Unito 2015 9 C 5732471.0
21 CH25-Prodotti in metallo, esclusi macchinari e... Torino Regno Unito 2015 9 C 26267122.0
22 CI26-Computer e prodotti di elettronica e otti... Torino Regno Unito 2015 9 C 39353827.0
23 CJ27-Apparecchiature elettriche e apparecchiat... Torino Regno Unito 2015 9 C 158892551.0
24 CK28-Macchinari e apparecchiature nca Torino Regno Unito 2015 9 C 143860889.0
25 CL29-Autoveicoli, rimorchi e semirimorchi Torino Regno Unito 2015 9 C 273476075.0
26 CL30-Altri mezzi di trasporto Torino Regno Unito 2015 9 C 139153767.0
27 CM31-Mobili Torino Regno Unito 2015 9 C 2224327.0
28 CM32-Prodotti delle altre industrie manifattur... Torino Regno Unito 2015 9 C 21667924.0
29 EE38-Prodotti delle attivitŕ di raccolta, trat... Torino Regno Unito 2015 9 C 48378.0
... ... ... ... ... ... ... ...
3322 CE20-Prodotti chimici CarboniaIglesias Regno Unito 2015 9 C 0.0
3323 CG22-Articoli in gomma e materie plastiche CarboniaIglesias Regno Unito 2015 9 C 0.0
3324 CG23-Altri prodotti della lavorazione di miner... CarboniaIglesias Regno Unito 2015 9 C 59751.0
3325 CH24-Prodotti della metallurgia CarboniaIglesias Regno Unito 2015 9 C 0.0
3326 CH25-Prodotti in metallo, esclusi macchinari e... CarboniaIglesias Regno Unito 2015 9 C 8462288.0
3327 CI26-Computer e prodotti di elettronica e otti... CarboniaIglesias Regno Unito 2015 9 C 0.0
3328 CJ27-Apparecchiature elettriche e apparecchiat... CarboniaIglesias Regno Unito 2015 9 C 0.0
3329 CK28-Macchinari e apparecchiature nca CarboniaIglesias Regno Unito 2015 9 C 0.0
3330 CL29-Autoveicoli, rimorchi e semirimorchi CarboniaIglesias Regno Unito 2015 9 C 0.0
3331 CM31-Mobili CarboniaIglesias Regno Unito 2015 9 C 0.0
3332 CM32-Prodotti delle altre industrie manifattur... CarboniaIglesias Regno Unito 2015 9 C 0.0
3333 JA58-Prodotti delle attivitŕ editoriali CarboniaIglesias Regno Unito 2015 9 C 0.0
3334 Totale CarboniaIglesias Regno Unito 2015 9 C 8740333.0
3335 NaN CarboniaIglesias Regno Unito 2015 9 C NaN
3336 CB13-Prodotti tessili Province non specificate e altri stati membri Regno Unito 2015 9 C 0.0
3337 CB14-Articoli di abbigliamento (anche in pelle... Province non specificate e altri stati membri Regno Unito 2015 9 C 65.0
3338 CB15-Articoli in pelle (escluso abbigliamento)... Province non specificate e altri stati membri Regno Unito 2015 9 C 0.0
3339 CC17-Carta e prodotti di carta Province non specificate e altri stati membri Regno Unito 2015 9 C 0.0
3340 CM32-Prodotti delle altre industrie manifattur... Province non specificate e altri stati membri Regno Unito 2015 9 C 40.0
3341 VV89-Merci dichiarate come provviste di bordo,... Province non specificate e altri stati membri Regno Unito 2015 9 C 199855168.0
3342 Totale Province non specificate e altri stati membri Regno Unito 2015 9 C 199855273.0
3343 NaN Province non specificate e altri stati membri Regno Unito 2015 9 C NaN
3344 CB13-Prodotti tessili Province non specificate e altri stati membri Regno Unito 2015 9 C 0.0
3345 CB14-Articoli di abbigliamento (anche in pelle... Province non specificate e altri stati membri Regno Unito 2015 9 C 65.0
3346 CB15-Articoli in pelle (escluso abbigliamento)... Province non specificate e altri stati membri Regno Unito 2015 9 C 0.0
3347 CC17-Carta e prodotti di carta Province non specificate e altri stati membri Regno Unito 2015 9 C 0.0
3348 CM32-Prodotti delle altre industrie manifattur... Province non specificate e altri stati membri Regno Unito 2015 9 C 40.0
3349 VV89-Merci dichiarate come provviste di bordo,... Province non specificate e altri stati membri Regno Unito 2015 9 C 199855168.0
3350 Totale Province non specificate e altri stati membri Regno Unito 2015 9 C 199855273.0
3351 NaN Province non specificate e altri stati membri Regno Unito 2015 9 C NaN

3352 rows × 7 columns


In [135]:
Divisioni.sort_values("DATI EXPORT", ascending = False)


Out[135]:
DATI EXPORT %
Divisioni
CK28-Macchinari e apparecchiature nca 3.130057e+09 1.380077e+01
CL29-Autoveicoli, rimorchi e semirimorchi 2.558540e+09 1.128089e+01
CA10-Prodotti alimentari 1.963029e+09 8.655213e+00
CB14-Articoli di abbigliamento (anche in pelle e in pelliccia) 1.382430e+09 6.095289e+00
CJ27-Apparecchiature elettriche e apparecchiature per uso domestico non elettriche 1.276499e+09 5.628227e+00
CE20-Prodotti chimici 1.204897e+09 5.312528e+00
CF21-Prodotti farmaceutici di base e preparati farmaceutici 1.120186e+09 4.939027e+00
CB15-Articoli in pelle (escluso abbigliamento) e simili 1.052251e+09 4.639491e+00
CA11-Bevande 9.361440e+08 4.127564e+00
CM31-Mobili 9.277848e+08 4.090707e+00
CH25-Prodotti in metallo, esclusi macchinari e attrezzature 8.988059e+08 3.962936e+00
CH24-Prodotti della metallurgia 8.850262e+08 3.902180e+00
CL30-Altri mezzi di trasporto 7.866995e+08 3.468646e+00
CG22-Articoli in gomma e materie plastiche 7.511955e+08 3.312105e+00
CM32-Prodotti delle altre industrie manifatturiere 7.411585e+08 3.267851e+00
CI26-Computer e prodotti di elettronica e ottica; apparecchi elettromedicali, apparecchi di misurazione e orologi 6.295182e+08 2.775616e+00
CG23-Altri prodotti della lavorazione di minerali non metalliferi 4.839993e+08 2.134007e+00
CB13-Prodotti tessili 4.204155e+08 1.853659e+00
VV89-Merci dichiarate come provviste di bordo, merci nazionali di ritorno e respinte, merci varie 4.002582e+08 1.764783e+00
CC17-Carta e prodotti di carta 3.966309e+08 1.748790e+00
AA01-Prodotti agricoli, animali e della caccia 3.105211e+08 1.369122e+00
JA58-Prodotti delle attivitŕ editoriali 1.325401e+08 5.843840e-01
CC16-Legno e prodotti in legno e sughero (esclusi i mobili); articoli in paglia e materiali da intreccio 1.023965e+08 4.514776e-01
CD19-Coke e prodotti derivanti dalla raffinazione del petrolio 8.430077e+07 3.716916e-01
EE38-Prodotti delle attivitŕ di raccolta, trattamento e smaltimento dei rifiuti; prodotti dell'attivitŕ di recupero dei materiali 4.671927e+07 2.059905e-01
DD35-Energia elettrica, gas, vapore e aria condizionata 1.416955e+07 6.247512e-02
BB08-Altri minerali da cave e miniere 1.361420e+07 6.002653e-02
JA59-Prodotti delle attivitŕ di produzione cinematografica, video e programmi televisivi; registrazioni musicali e sonore 1.183044e+07 5.216174e-02
RR90-Prodotti delle attivitŕ creative, artistiche e d'intrattenimento 9.812166e+06 4.326294e-02
AA02-Prodotti della silvicoltura 3.963610e+06 1.747600e-02
AA03-Prodotti della pesca e dell'acquacoltura 2.026102e+06 8.933311e-03
CC18-Prodotti della stampa e della riproduzione di supporti registrati 1.568160e+06 6.914193e-03
RR91-Prodotti delle attivitŕ di biblioteche, archivi, musei e di altre attivitŕ culturali 9.867410e+05 4.350652e-03
BB07-Minerali metalliferi 1.921260e+05 8.471051e-04
MC74-Prodotti delle altre attivitŕ professionali, scientifiche e tecniche 8.297700e+04 3.658549e-04
CA12-Tabacco 5.193900e+04 2.290049e-04
BB05-Carbone (esclusa torba) 2.953000e+03 1.302011e-05
SS96-Prodotti delle altre attivitŕ di servizi per la persona 3.500000e+02 1.543189e-06
BB06-Petrolio greggio e gas naturale 2.600000e+01 1.146369e-07

In [ ]: