Heim >Backend-Entwicklung >Python-Tutorial >Wie erstelle ich Pandas-DataFrames aus Wörterbüchern mit unterschiedlichen Array-Längen?

Wie erstelle ich Pandas-DataFrames aus Wörterbüchern mit unterschiedlichen Array-Längen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-09 21:25:02226Durchsuche

How to Create Pandas DataFrames from Dictionaries with Varying Array Lengths?

Erstellen von DataFrames aus Wörterbüchern mit unterschiedlichen Array-Längen

Beim Erstellen eines DataFrames aus einem Wörterbuch, in dem es sich bei den Werten um Numpy-Arrays handelt, können nachfolgende Fehler auftreten wenn die Arrays nicht die gleiche Länge haben. Dies liegt daran, dass Pandas konsistente Array-Längen für jede Spalte erfordert.

Um dies zu überwinden, ermöglicht Pandas fehlende Werte (NaN), um die kürzeren Arrays auszufüllen. Dies ermöglicht die Erstellung von DataFrames mit Spalten unterschiedlicher Länge.

Python 2.x:

import pandas as pd
import numpy as np

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.iteritems() ]))

Python 3.x:

import pandas as pd
import numpy as np

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() ]))

In beiden Fällen verfügt der resultierende DataFrame über die Spalten A und B, wobei A die ersten beiden enthält Werte des jeweiligen Arrays im Wörterbuch, und B enthält alle vier Werte. Das kürzere Array (A) wird mit NaN für die fehlenden Werte aufgefüllt.

Ausgabe:

    A  B
0   1  1
1   2  2
2 NaN  3
3 NaN  4

Das obige ist der detaillierte Inhalt vonWie erstelle ich Pandas-DataFrames aus Wörterbüchern mit unterschiedlichen Array-Längen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn