Heim > Backend-Entwicklung > Python-Tutorial > 5 häufige Python-Fallstricke bei der Datenvorbereitung

5 häufige Python-Fallstricke bei der Datenvorbereitung

Joseph Gordon-Levitt
Freigeben: 2024-10-29 10:06:36
nach vorne
593 Leute haben es durchsucht

Python ist eine leistungsstarke Sprache für die Datenaufbereitung, aber es gibt einige häufige Fehler oder Fallstricke, auf die Menschen stoßen können. In diesem Blogbeitrag werde ich Besprechen Sie fünf der häufigsten Probleme, mit denen Menschen bei der Nutzung konfrontiert werden Python zur Datenvorbereitung.

5 häufige Python-Fallstricke bei der Datenvorbereitung

1. Betrachtet fehlende Werte (`NaN`) als falsch.

Falsch, Keine und 0 (beliebigen numerischen Typs) werden alle als Falsch ausgewertet.

Dieser Satz von Objekten und Werten wird als „falsch“ und „falsch“ bezeichnet als falsch auswerten. NaN oder fehlende Werte sind nicht falsch und daher wird nicht als falsch ausgewertet. Dies kann bei vielen Vorgängen zu großer Verwirrung und unerwartetem Verhalten führen.

2. Versuch, fehlende Werte zu vergleichen

Es scheint einfach genug, dass NaN == NaN „true“ zurückgibt. Beide Werte „sehen“ gleich aus.

Da es jedoch unmöglich ist zu wissen, ob die beiden fehlenden Werte gleich sind, wird dieser Vorgang immer „false“ zurückgeben.

3. Ich denke, dass all() nur dann true zurückgibt, wenn alle Elemente wahr sind.

Die all()-Methode gibt true zurück, wenn alle Elemente der Iterable wahr sind (oder wenn das Iterable ist leer). 

Betrachten Sie es nicht als „Gib true zurück, wenn alle Elemente des iterable sind wahr“, sondern „Gib true zurück, wenn es keine false gibt.“ Elemente im Iterable.“

Wenn das Iterable leer ist, kann es keine falschen Elemente darin enthalten, was bedeutet, dass all([]) als True ausgewertet wird.

4. Konvertieren in boolesche Werte

Pandas folgt der Numpy-Konvention, einen Fehler auszulösen, wenn Sie Versuchen Sie, etwas in einen Bool umzuwandeln. Dies geschieht in einem if oder when using die booleschen Operationen und, oder, oder nicht.

Es ist nicht klar, wie das Ergebnis aussehen soll. Sollte es wahr sein weil es nicht die Länge Null hat? Falsch, weil es falsche Werte gibt?

Es ist unklar, daher löst Pandas stattdessen einen ValueError aus

ValueError: Der Wahrheitswert einer Serie ist nicht eindeutig. 

Verwenden Sie a.empty, a.bool() a.item(),a.any() oder a.all().

5. Die Ergebnisse der isin()-Operation verstehen.

Die isin()-Operation gibt eine boolesche Reihe zurück ob jedes Element in der Serie genau im übergebenen enthalten ist Folge von Werten.

 s = pd.Series(['dog', 'cat', 'fish'])
>>> s.isin(['bird'])
0    False
1    False
2    False
dtype: bool
Nach dem Login kopieren

Beachten Sie, dass „Vogel“ in der Reihe nicht existiert.

>>> s.isin(['bird', 'cat'])
0    False
1     True
2    False
dtype: bool
Nach dem Login kopieren

Beachten Sie „Katze“ existiert im 2. Wert der Reihe.

Erfahren Sie mehr über die Verwendung von Python zur Datenvorbereitung

Python ist eine mächtige Sprache, aber es kann zu Verwirrung kommen fehlende und boolesche Werte. Beachten Sie, dass fehlende Werte vorhanden sind gelten als falsch und können nicht verglichen werden. 

Bedenken Sie bei Verwendung der all()-Methode, dass sie zurückgibt true, wenn die Iterable keine falschen Werte enthält.  Wenn alle Werte vorhanden sind fehlen, wie im Fall eines leeren Arrays, gibt all() ebenfalls true zurück, da fehlende Werte nicht als falsch betrachtet werden. 

Wenn Sie beim Versuch, in Bool-Werte zu konvertieren, einen ValueError erhalten, befolgen Sie unbedingt die hilfreichen Ratschläge und verwenden Sie eine der vorgeschlagenen Methoden.

Das obige ist der detaillierte Inhalt von5 häufige Python-Fallstricke bei der Datenvorbereitung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:pluralsight.com
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage