Ich habe einen Datenrahmen in Pandas und ich versuche herauszufinden, welche Arten von Werten es gibt. Ich bin mir nicht sicher, um welchen Spaltentyp es sich handelt 'Test'
. Wenn ich jedoch renne myFrame['Test'].dtype
, bekomme ich;
dtype('O')
Was bedeutet das?
pandas
verwendetobject
dtype frei, wenn Spalten gemischte Werte enthalten (Strings, Zahlen, Nan).Antworten:
Es bedeutet:
Quelle .
Eine andere Antwort hilft bei Bedarf
type
s.quelle
Wenn Sie
dtype('O')
innerhalb des Datenrahmens sehen, bedeutet dies eine Pandas-Zeichenfolge.Was ist
dtype
?Etwas, das gehört
pandas
odernumpy
oder beides oder etwas anderes? Wenn wir den Pandas-Code untersuchen:Es wird wie folgt ausgegeben:
Sie können das letzte
dtype('O')
Objekt als Pandas oder Pandas-Objekt interpretieren, bei dem es sich um eine Python-Zeichenfolge handelt, die Numpystring_
oderunicode_
Typen entspricht.Wie Don Quijote auf dem Arsch ist, ist Pandas auf Numpy und Numpy versteht die zugrunde liegende Architektur Ihres Systems und verwendet die Klasse
numpy.dtype
dafür.Das Datentypobjekt ist eine Instanz einer
numpy.dtype
Klasse, die den Datentyp genauer versteht, einschließlich:Im Kontext dieser Frage
dtype
gehört sowohl zu pands als auch zu numpy unddtype('O')
bedeutet insbesondere, dass wir den String erwarten.Hier ist ein Code zum Testen mit Erklärung: Wenn wir den Datensatz als Wörterbuch haben
In den letzten Zeilen wird der Datenrahmen untersucht und die Ausgabe notiert:
Alles irgendwie anders
dtypes
Aber wenn wir versuchen , Satz
np.nan
oderNone
dies nicht die ursprüngliche Spalte dtype beeinflussen. Die Ausgabe sieht folgendermaßen aus:So
np.nan
oderNone
nicht die Spalten änderndtype
, es sei denn , wir die alle Spaltenzeilen gesetztnp.nan
oderNone
. In diesem Fall Spalte werdenfloat64
oderobject
sind.Sie können auch versuchen, einzelne Zeilen festzulegen:
Und wenn wir hier einen String in einer Nicht-String-Spalte setzen, wird er zu einem String oder Objekt
dtype
.quelle
Es bedeutet "ein Python-Objekt", dh nicht einer der eingebauten Skalartypen, die von numpy unterstützt werden.
quelle
'O' steht für Objekt .
Die erste Zeile gibt Folgendes zurück:
dtype('O')
Die Zeile mit der print-Anweisung gibt Folgendes zurück:
object
quelle