Changer le type de données

Dans le traitement et l’analyse de données, il est souvent nécessaire de modifier le type de certaines variables pour assurer la cohérence et la bonne interprétation des données. Le changement de type de données consiste à convertir une colonne ou une variable d’un format à un autre, par exemple d’une chaîne de caractères (string) à un format numérique (int ou float), ou encore en date (datetime).

Cette étape est essentielle car de nombreux algorithmes et fonctions statistiques requièrent des types spécifiques pour fonctionner correctement. Par exemple, une variable de dates stockée en texte doit être convertie en format date pour pouvoir réaliser des calculs de durée ou des tris chronologiques.

Changer le type de données peut également permettre d’optimiser la mémoire utilisée, de faciliter les opérations de nettoyage, ou d’adapter les données aux exigences des modèles d’apprentissage automatique.

Dans cette page, vous découvrirez comment identifier le type de données d’une variable, les méthodes courantes pour convertir les types, ainsi que des exemples pratiques utilisant des outils comme pandas en Python.

Fonctions :

  • astype()

    La méthode astype() de pandas permet de convertir une ou plusieurs colonnes d’un DataFrame (ou une Series) vers un autre type de données. C’est une méthode essentielle pour s’assurer que les données ont le bon format (par exemple, transformer une chaîne de caractères en nombre).

    Importation :

    import pandas as pd

    Attributs :

    Paramètre Type Description Valeur par défaut
    dtype data type, dict, Series Le type ou les types vers lesquels convertir les données. Peut être un type unique ou un dictionnaire pour des conversions colonne par colonne.
    copy bool Si True, retourne une copie du DataFrame. Sinon, évite de copier si possible. True
    errors {'raise', 'ignore'} Détermine le comportement en cas d'erreur de conversion. 'raise' déclenche une exception, 'ignore' laisse les valeurs inchangées. 'raise'

    Exemple de code :

    import pandas as pd
    
    # Création d'un DataFrame
    data = {
        'Nom': ['Alice', 'Bob', 'Charlie'],
        'Âge': ['25', '30', '35']  # Âge est de type str
    }
    
    df = pd.DataFrame(data)
    
    # Conversion de la colonne 'Âge' en entier
    df['Âge'] = df['Âge'].astype(int)
    
    print(df)
    print(df.dtypes)
    
    Résultat du code

    Explication du code :

    importe la bibliothèque pandas.
    
    
    Création du DataFrame
    Le dictionnaire data contient une colonne 'Âge' avec des valeurs numériques sous forme de chaînes de caractères ('25', '30', etc.). df = pd.DataFrame(data) transforme ce dictionnaire en tableau de données.
    Conversion du type de données
    df['Âge'] = df['Âge'].astype(int) convertit les chaînes de la colonne 'Âge' en entiers.
    Affichage
    print(df) affiche le DataFrame modifié. print(df.dtypes) affiche les types de données de chaque colonne pour vérifier la conversion.