Heim >Backend-Entwicklung >Python-Tutorial >Wie erstellt man effizient einen Pandas-DataFrame mit sequentiellen Zeilen?

Wie erstellt man effizient einen Pandas-DataFrame mit sequentiellen Zeilen?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-16 11:59:10303Durchsuche

How to Efficiently Create a Pandas DataFrame with Sequential Rows?

Erstellen eines Pandas-Datenrahmens mit sequentiellen Zeilen

Bei der Datenanalyse ist es häufig erforderlich, einen Pandas-Datenrahmen zu erstellen und iterativ hinzuzufügen Reihen dazu. Um dies zu erreichen, stehen mehrere Methoden zur Verfügung, von denen jede ihre eigenen Vorteile hat.

Ein Ansatz besteht darin, den pd.DataFrame()-Konstruktor mit dem columns-Parameter zu verwenden, um die gewünschten Spaltennamen anzugeben. Ein leerer DataFrame wird erstellt. Anschließend können mithilfe der Methode _set_value() Zeilen nacheinander hinzugefügt werden, um einzelne Feldwerte festzulegen. Diese Methode ist jedoch ineffizient, wenn für jede Zeile mehrere Felder gleichzeitig hinzugefügt werden müssen.

Eine effizientere Lösung ist die Verwendung der df.loc[i]-Syntax, wobei i den Zeilenindex darstellt. Durch Zuweisen einer Werteliste zu df.loc[i] kann die gesamte Zeile am Index i in einem Schritt gefüllt werden. Dieser Ansatz ist bei großen Datensätzen erheblich schneller, da er die Notwendigkeit mehrerer _set_value()-Aufrufe vermeidet.

Um diese Methode zu demonstrieren, betrachten Sie den folgenden Codeausschnitt:

import numpy as np
import pandas as pd

df = pd.DataFrame(columns=['lib', 'qty1', 'qty2'])
for i in range(5):
    df.loc[i] = ['name' + str(i)] + list(np.random.randint(10, size=2))

print(df)

Dieser Code erstellt ein leerer DataFrame mit drei Spalten: „lib“, „qty1“ und „qty2“. Anschließend werden fünf Datenzeilen generiert, wobei auf „Name“ zwei zufällig generierte Ganzzahlwerte in den verbleibenden Spalten folgen. Das Ergebnis ist ein DataFrame mit der angegebenen Struktur und den angegebenen Daten:

     lib qty1 qty2
0  name0    3    3
1  name1    2    4
2  name2    2    8
3  name3    2    1
4  name4    9    6

Das obige ist der detaillierte Inhalt vonWie erstellt man effizient einen Pandas-DataFrame mit sequentiellen Zeilen?. 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