In [1]:
import pandas as pd

In [2]:
with open("Base_Carbone_V16.0_export_util_recoded.csv", "r") as fin:
    first_line = fin.readline().strip()
col_names = first_line.split(";")
d = pd.read_csv("Base_Carbone_V16.0_export_util_recoded.csv", sep=";", names=col_names, low_memory=False, skiprows=[0])

In [3]:
d.describe()


Out[3]:
Identifiant de l'élément Nom frontière espagnol Unité espagnol Incertitude Qualité TeR Qualité GR Qualité TiR Qualité C Qualité P Qualité M Commentaire espagnol Code gaz supplémentaire 3 Valeur gaz supplémentaire 3 Code gaz supplémentaire 4 Valeur gaz supplémentaire 4
count 14367.000000 0.0 0.0 12288.000000 3352.000000 3343.000000 3352.000000 3352.000000 3343.000000 3343.000000 0.0 0.0 1635.0 0.0 1635.0
mean 22015.437878 NaN NaN 30.844482 2.227029 2.554293 2.570107 2.056683 1.959617 2.037691 NaN NaN 0.0 NaN 0.0
std 3934.601689 NaN NaN 19.562892 1.381576 1.974394 1.935357 1.271456 1.220897 1.369197 NaN NaN 0.0 NaN 0.0
min 9356.000000 NaN NaN 5.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 NaN NaN 0.0 NaN 0.0
25% 21018.000000 NaN NaN 20.000000 1.000000 1.000000 1.000000 1.000000 2.000000 1.000000 NaN NaN 0.0 NaN 0.0
50% 22276.000000 NaN NaN 30.000000 3.000000 2.000000 2.000000 2.000000 2.000000 2.000000 NaN NaN 0.0 NaN 0.0
75% 24532.000000 NaN NaN 40.000000 3.000000 5.000000 5.000000 3.000000 3.000000 3.000000 NaN NaN 0.0 NaN 0.0
max 27089.000000 NaN NaN 400.000000 5.000000 5.000000 5.000000 5.000000 5.000000 5.000000 NaN NaN 0.0 NaN 0.0

In [4]:
print(d.shape)


(14367, 67)

In [5]:
d.columns


Out[5]:
Index(['Type Ligne', 'Identifiant de l'élément', 'Structure',
       'Type de l'élément', 'Statut de l'élément', 'Nom base français',
       'Nom base anglais', 'Nom base espagnol', 'Nom attribut français',
       'Nom attribut anglais', 'Nom attribut espagnol',
       'Nom frontière français', 'Nom frontière anglais',
       'Nom frontière espagnol', 'Code de la catégorie', 'Tags français',
       'Tags anglais', 'Tags espagnol', 'Unité français', 'Unité anglais',
       'Unité espagnol', 'Contributeur', 'Autres Contributeurs', 'Programme',
       'Url du programme', 'Source', 'Localisation géographique',
       'Sous-localisation géographique français',
       'Sous-localisation géographique anglais',
       'Sous-localisation géographique espagnol', 'Date de création',
       'Date de modification', 'Période de validité', 'Incertitude',
       'Réglementations', 'Transparence', 'Qualité', 'Qualité TeR',
       'Qualité GR', 'Qualité TiR', 'Qualité C', 'Qualité P', 'Qualité M',
       'Commentaire français', 'Commentaire anglais', 'Commentaire espagnol',
       'Type poste', 'Nom poste français', 'Nom poste anglais',
       'Nom poste espagnol', 'Total poste non décomposé', 'CO2f', 'CH4f',
       'CH4b', 'N2O', 'Code gaz supplémentaire 1',
       'Valeur gaz supplémentaire 1', 'Code gaz supplémentaire 2',
       'Valeur gaz supplémentaire 2', 'Code gaz supplémentaire 3',
       'Valeur gaz supplémentaire 3', 'Code gaz supplémentaire 4',
       'Valeur gaz supplémentaire 4', 'Code gaz supplémentaire 5',
       'Valeur gaz supplémentaire 5', 'Autres GES', 'CO2b'],
      dtype='object')

In [6]:
d["Total poste non décomposé"].describe()


Out[6]:
count     14367
unique     4680
top           0
freq        327
Name: Total poste non décomposé, dtype: object

In [7]:
d["Total poste non décomposé"].head( 27)


Out[7]:
0     7,55E-03
1        0,267
2        0,391
3        0,267
4     4,00E-03
5        0,035
6     1,01E-03
7     6,65E-03
8     3,00E-05
9     1,35E-03
10    2,00E-05
11        1,06
12        0,53
13       0,624
14       0,312
15        1199
16        3300
17        3300
18        3180
19        1424
20         807
21         148
22        3190
23        2211
24        1100
25         938
26         6,9
Name: Total poste non décomposé, dtype: object

In [8]:
def lower_case_e (x):
    return (x.replace("E", "e").replace(",", "."))
d['Total poste non décomposé'] = d['Total poste non décomposé'].apply(lower_case_e)

In [9]:
d["Total poste non décomposé"] = d["Total poste non décomposé"].astype(float)

#pd.to_numeric(d["Total poste non décomposé"])

In [10]:
d["Total poste non décomposé"].describe()


Out[10]:
count     14367.000000
mean        635.295204
std        9035.972487
min       -2090.000000
25%           0.053300
50%           0.515000
75%          35.000000
max      710000.000000
Name: Total poste non décomposé, dtype: float64

In [ ]: