Introduction
Dans ce laboratoire, nous allons explorer la manière d'utiliser le type de données entier nullable dans pandas, qui est un moyen efficace de gérer les données entières qui peuvent contenir des valeurs manquantes. Nous allons apprendre à construire des tableaux avec ce type de données, effectuer des opérations et gérer efficacement les valeurs manquantes.
Conseils sur la machine virtuelle
Une fois le démarrage de la machine virtuelle terminé, cliquez dans le coin supérieur gauche pour basculer vers l'onglet Notebook pour accéder à Jupyter Notebook pour la pratique.
Parfois, vous devrez peut-être attendre quelques secondes pour que Jupyter Notebook ait fini de charger. La validation des opérations ne peut pas être automatisée en raison des limitations de Jupyter Notebook.
Si vous rencontrez des problèmes pendant l'apprentissage, n'hésitez pas à demander à Labby. Donnez des commentaires après la session, et nous résoudrons rapidement le problème pour vous.
Construction d'objets IntegerArray avec des valeurs manquantes
Pandas fournit la classe IntegerArray pour créer des tableaux d'entiers pouvant contenir des valeurs manquantes. Commençons par créer un IntegerArray.
## Importez les bibliothèques nécessaires
import pandas as pd
import numpy as np
## Créez un `IntegerArray` avec des valeurs manquantes
arr = pd.array([1, 2, None], dtype=pd.Int64Dtype())
## Sortie : <IntegerArray>
## [1, 2, <NA>]
## Longueur : 3, dtype : Int64
Vous pouvez également utiliser l'alias de chaîne de caractères "Int64" pour spécifier le type de données lors de la création du tableau. Toutes les valeurs du type NA sont remplacées par pandas.NA.
## Créez un `IntegerArray` en utilisant l'alias de chaîne de caractères "Int64"
arr = pd.array([1, 2, np.nan], dtype="Int64")
## Sortie : <IntegerArray>
## [1, 2, <NA>]
## Longueur : 3, dtype : Int64
Stockage de l'objet IntegerArray dans un DataFrame ou une Series
Une fois que vous avez créé un IntegerArray, vous pouvez le stocker dans un DataFrame ou une Series. Créons une Series à partir de l'IntegerArray que nous avons créé.
## Créez une `Series` à partir de l'`IntegerArray`
series = pd.Series(arr)
Effectuer des opérations avec des tableaux d'entiers pouvant contenir des valeurs manquantes
Vous pouvez effectuer diverses opérations avec des tableaux d'entiers pouvant contenir des valeurs manquantes, telles que des opérations arithmétiques, des comparaisons et des découpes.
## Créez une `Series` avec un type d'entier pouvant contenir des valeurs manquantes
s = pd.Series([1, 2, None], dtype="Int64")
## Effectuez une opération arithmétique
s_plus_un = s + 1 ## ajoute 1 à chaque élément de la `Series`
## Effectuez une comparaison
comparaison = s == 1 ## vérifie si chaque élément de la `Series` est égal à 1
## Effectuez une opération de découpe
decoupe = s.iloc[1:3] ## sélectionne le deuxième et le troisième élément de la `Series`
Gérer les valeurs manquantes avec pandas.NA
La classe IntegerArray utilise pandas.NA comme valeur manquante scalaire. Lorsque vous découpez un seul élément manquant, cela renverra pandas.NA.
## Créez un `IntegerArray` avec une valeur manquante
a = pd.array([1, None], dtype="Int64")
## Découpez le deuxième élément qui est une valeur manquante
valeur_manquante = a[1]
## Sortie : <NA>
Sommaire
Dans ce laboratoire, nous avons montré comment travailler avec les types de données d'entiers pouvant contenir des valeurs manquantes dans pandas, notamment comment construire des tableaux, les stocker dans un DataFrame ou une Series, effectuer des opérations et gérer les valeurs manquantes. En utilisant le type de données d'entiers pouvant contenir des valeurs manquantes, vous pouvez gérer plus efficacement les données entières avec des valeurs manquantes.