Erstellen eines Datenrahmens aus einem Wörterbuch mit Arrays unterschiedlicher Länge
Die Herausforderung besteht darin, einen Datenrahmen mit Spalten zu generieren, die aus Numpy-Arrays unterschiedlicher Länge bestehen Aus einem Wörterbuch extrahierte Werte. Um dies zu erreichen, untersuchen wir eine Lösung mit Python.
In Python 3.x und höher kann das folgende Code-Snippet verwendet werden:
import pandas as pd import numpy as np # Define a dictionary with key-value pairs representing numpy arrays d = { "A": np.random.randn(10), "B": np.random.randn(12), "C": np.random.randn(8) } # Create a dataframe by converting each key-value pair to a series df = pd.DataFrame( dict([ (k, pd.Series(v)) for k, v in d.items() ]) ) # Display the resulting dataframe print(df)
Dieser Code erstellt einen Datenrahmen mit den Spalten „A“, „B“ und „C“, die jeweils entsprechende Numpy-Array-Werte aus dem Wörterbuch enthalten. Wenn Arrays unterschiedliche Längen haben, werden sie automatisch ausgerichtet und die kürzeren Arrays mit NaN-Werten als Auffüllung erweitert.
In Python 2.x ist eine geringfügige Änderung erforderlich:
import pandas as pd import numpy as np # Define a dictionary with key-value pairs representing numpy arrays d = { "A": np.random.randn(10), "B": np.random.randn(12), "C": np.random.randn(8) } # Create a dataframe by converting each key-value pair to a series df = pd.DataFrame( dict([ (k, pd.Series(v)) for k, v in d.iteritems() ]) ) # Display the resulting dataframe print(df)
In Python 2.x wird die Funktion iteritems() anstelle von items() verwendet, um über Schlüssel-Wert-Paare im Wörterbuch zu iterieren.
Durch die Verwendung dieses Ansatzes Sie können bequem Datenrahmen mit Spalten erstellen, die Arrays unterschiedlicher Länge enthalten, und so sicherstellen, dass die Daten richtig ausgerichtet und verarbeitet werden.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3