Warum unterscheiden Pandas zwischen einer Series
und einer einzelnen Spalte DataFrame
?
Mit anderen Worten: Was ist der Grund für die Existenz der Series
Klasse?
Ich verwende hauptsächlich Zeitreihen mit Datum / Uhrzeit-Index. Vielleicht hilft das, den Kontext festzulegen.
DataFrame
als eindict
vonSeries
(obwohl das nicht die aktuelle Implementierung ist), ist es noch unklar , warum Sie jemals eine Rückkehr würdeSeries
Objekt anstelle einesDataFrame
(dh vom Konzept her einedict
mit einem Eintrag).Antworten:
Zitieren der Pandas-Dokumente
Die Serie ist also die Datenstruktur für eine einzelne Spalte von a
DataFrame
, nicht nur konzeptionell, sondern wörtlich, dh die Daten in aDataFrame
werden tatsächlich als Sammlung von im Speicher gespeichertSeries
.Analog: Wir brauchen sowohl Listen als auch Matrizen, weil Matrizen mit Listen erstellt werden. Einzeilige Matrizen sind zwar gleichbedeutend mit Listen in der Funktionalität, können jedoch ohne die Liste (n), aus denen sie bestehen, nicht existieren.
Beide haben extrem ähnliche APIs, aber Sie werden feststellen, dass
DataFrame
Methoden immer die Möglichkeit berücksichtigen, dass Sie mehr als eine Spalte haben. Und natürlich können Sie einem jederzeit ein anderesSeries
(oder ein gleichwertiges Objekt)DataFrame
hinzufügen, während das Hinzufügen einesSeries
zu einem anderenSeries
das Erstellen einesDataFrame
.quelle
__repr__
verhalten würden, also können Sie sie nicht verwechseln?DataFrame
von schließenCan be thought of as a dict-like container for Series objects
. Tatsächlich wird es derzeit als gespeichertBlockManager
(ein Implementierungsdetail, auf das Sie sich nicht verlassen sollten).aus dem Pandas-Dokument http://pandas.pydata.org/pandas-docs/stable/dsintro.html Die Serie ist ein eindimensional beschriftetes Array, das jeden Datentyp aufnehmen kann. So lesen Sie Daten in Form von Panda-Serien:
DataFrame ist eine zweidimensional beschriftete Datenstruktur mit Spalten potenziell unterschiedlicher Typen.
In beiden oben genannten Index ist Liste
Zum Beispiel: Ich habe eine CSV-Datei mit folgenden Daten:
So lesen Sie die obigen Daten als Serie und Datenrahmen:
Ausgabe:
Ausgabe:
quelle
file_data
umbrics
eine US - Linie zum csv hinzufügen und ändern['BR'....'US']
zubrics.index
. Vielleicht richtigpupuplation
.Serie ist ein eindimensionales Objekt, das jeden Datentyp wie Ganzzahlen, Gleitkommazahlen und Zeichenfolgen enthalten kann, z
Die erste Spalte der Serie ist als Index bekannt, dh 0,1,2. Die zweite Spalte enthält Ihre tatsächlichen Daten, dh A, B, C.
DataFrames ist ein zweidimensionales Objekt, das Serien, Listen und Wörterbücher enthalten kann
quelle
Series ist ein eindimensional beschriftetes Array, das jeden Datentyp (Ganzzahlen, Zeichenfolgen, Gleitkommazahlen, Python-Objekte usw.) enthalten kann. Die Achsenbeschriftungen werden zusammen als Index bezeichnet. Die grundlegende Methode zum Erstellen einer Serie besteht darin, Folgendes aufzurufen:
DataFrame ist eine zweidimensional beschriftete Datenstruktur mit Spalten potenziell unterschiedlicher Typen. Sie können sich das wie eine Tabelle, eine SQL-Tabelle oder ein Diktat von Serienobjekten vorstellen.
quelle
Autodaten importieren
So sieht die Datei cars.csv aus.
Drucken Sie die Spalte drive_right als Serie aus:
Die Single-Bracket-Version bietet eine Pandas-Serie, die Double-Bracket-Version einen Pandas DataFrame.
Drucken Sie die Spalte drive_right als DataFrame aus
Durch Hinzufügen einer Serie zu einer anderen Serie wird ein DataFrame erstellt.
quelle