[PYTHON] Gérer les types entiers avec des valeurs manquantes dans Pandas

Auparavant, la série Pandas ne pouvait pas gérer les types entiers contenant des valeurs manquantes.

pd.Series([1, 2, None], dtype=int)
TypeError: int() argument must be a string, a bytes-like object or a number, not 'NoneType'

Lorsque des données numériques comprenant des valeurs manquantes sont lues sans spécifier le type, elles sont converties en type float64.

pd.Series([1, 2, None])
0    1.0
1    2.0
2    NaN
dtype: float64

Ce comportement est dû à la raison pour laquelle " numpy.nan est une valeur de type flottant ", mais nous voulons gérer les valeurs manquantes et ne doivent pas nécessairement être numpy.nan.

En réponse, Pandas v0.24.0 a ajouté Type de données entier Nullable. Il semble que ce problème ait été résolu en introduisant un nouveau pandas.NA au lieu de numpy.nan.

pd.Series([1, 2, None], dtype=pd.Int64Dtype())
0       1
1       2
2    <NA>
dtype: Int64

La valeur spécifiée pour dtype fonctionne de la même manière avec la chaîne «" Int64 "» au lieu de «pd.Int64Dtype ()». (Notez que «I» est en majuscule.)

Aussi dans la documentation

IntegerArray is currently experimental.

Telle qu'elle est écrite, cette fonction est encore au stade expérimental, vous devez donc être prudent lorsque vous l'utilisez.

Recommended Posts

Gérer les types entiers avec des valeurs manquantes dans Pandas
Remplissez les valeurs manquantes avec Scikit-learn impute
Supprimer les lignes avec des valeurs arbitraires dans pandas DataFrame
Ingéniosité pour gérer les données avec Pandas de manière à économiser la mémoire
Gère divers formats de date avec des pandas
Obtenez les nièmes valeurs les plus importantes dans Pandas
"Kaggle memorandum" Rechercher / supprimer les valeurs manquantes
Comment gérer des valeurs consécutives dans MySQL
Remplacez les noms / valeurs des colonnes par pandas dataframe
Gérez les structures de données 3D avec les pandas
Gérer les fichiers zip avec des noms de fichiers japonais dans Python 3
Une histoire remplie de valeurs absolues de numpy.ndarray
Supprimer les lignes avec des index en double dans pandas DataFrame
Regroupez les valeurs VIP de Smash Bra avec les pandas
Pandas de valeur manquante
Calculer la somme des valeurs uniques par tabulation croisée des pandas
[Go] sqlx gère les requêtes qui incluent des clauses IN avec Named Stmt
Précautions lors du traitement du type ROS MultiArray en Python
Comment accéder avec cache lors de la lecture_json avec pandas
Comment extraire des valeurs Null et des valeurs non Null avec des pandas
Convertissez les variables numériques en variables catégorielles avec les pandas en définissant un seuil