-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path02_nettoyage.py
More file actions
37 lines (29 loc) · 1.21 KB
/
Copy path02_nettoyage.py
File metadata and controls
37 lines (29 loc) · 1.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
"""
Nettoyage du fichier DARES : typage, gestion des valeurs "n.d"
(non disponible, ~0,5% des lignes, concentrées sur les périodes/tranches
non calculées historiquement plutôt que des données manquantes au hasard).
"""
import pandas as pd
SRC = "data/dares_defm_stock_regions_cvs-cjo_mens.csv"
DEST = "data/dares_defm_clean.parquet"
def nettoyer():
df = pd.read_csv(SRC, sep=";", encoding="utf-8-sig", low_memory=False)
df["nb_demandeurs"] = pd.to_numeric(
df["Nombre de demandeurs d'emploi"], errors="coerce"
)
n_nd = df["nb_demandeurs"].isna().sum()
df["date"] = pd.to_datetime(df["Date"], format="%Y-%m")
df = df.drop(columns=["Date", "Nombre de demandeurs d'emploi"])
df = df.rename(columns={
"Code région": "code_region", "Région": "region",
"Code département": "code_dept", "Département": "dept",
"Type de données": "type_donnees", "Catégorie": "categorie",
"Sexe": "sexe", "Tranche d'âge": "tranche_age",
"Ancienneté": "anciennete",
})
print(f"Lignes totales : {len(df)}")
print(f"Valeurs 'n.d' : {n_nd} ({n_nd/len(df)*100:.2f}%)")
df.to_parquet(DEST, index=False)
return df
if __name__ == "__main__":
nettoyer()