Maison >développement back-end >Tutoriel Python >Comment créer des DataFrames à partir de dictionnaires avec des longueurs d'entrée variables ?
Création de DataFrames à partir de dictionnaires avec des longueurs d'entrée variées
Lorsque vous travaillez avec des dictionnaires où les entrées contiennent des tableaux de longueurs variables, il devient difficile de construire un DataFrame où chaque colonne correspond à une entrée unique. Tenter de convertir directement un tel dictionnaire en DataFrame entraîne une "ValueError : les tableaux doivent tous avoir la même longueur."
Solution
Pour surmonter ce problème, un L'approche consiste à convertir le tableau de chaque entrée en une série, puis à construire un DataFrame à partir du dict résultant. Dans Python 3.x, cela peut être réalisé en utilisant une compréhension de liste :
d = dict( A = np.array([1,2]), B = np.array([1,2,3,4]) ) pd.DataFrame(dict([ (k,pd.Series(v)) for k,v in d.items() ])) # Output: A B 0 1 1 1 2 2 2 NaN 3 3 NaN 4
Dans Python 2.x, le code reste similaire, mais l'appel d.items() est remplacé par d.iteritems( ):
pd.DataFrame(dict([ (k,pd.Series(v)) for k,v in d.iteritems() ]))
Cette technique convertit efficacement chaque entrée du dictionnaire en une série, qui peut ensuite être ajoutée au DataFrame avec sa clé correspondante comme nom de colonne. Le DataFrame résultant aura des colonnes dont les longueurs correspondent à celles des tableaux d'origine. Les valeurs manquantes sont représentées sous forme de NaN pour garantir une structure de colonne cohérente.
En utilisant cette approche, il est possible de créer des DataFrames à partir de dictionnaires contenant des entrées avec des longueurs de tableau variables, permettant une analyse et une manipulation plus approfondies des données.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!