Spalte Typ:object filtern nach Wert

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Seppel90
User
Beiträge: 25
Registriert: Mittwoch 3. Februar 2021, 13:28

Hallo Zusammen,

Ich habe einen Dataframe mit verschiedenen Messwerten. Darunter auch Spalten vom Typ:object mit z. B folgendem Inhalt "2,4 V".
Ich möchte gerne diese Spalte filtern damit alle Werte unter "2,0 V" angezeigt werden.

Ich habe dies mit df.loc[(df['Spalte' ] <= "2,0" ) ] versucht. Aber es wird hier nicht gefiltert. Vermutlich da es vom Typ:object ist.

Die Frage ist... Muss ich die ganze Spalte erst Konvertieren? Bzw. Den Buchstaben "V" entfernen? Oder gibt es noch eine andere Möglichkeit?


Über Anreize würde ich mich sehr freuen.

Viele Grüße. :D
Benutzeravatar
__blackjack__
User
Beiträge: 13123
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Seppel90: Wenn Du mit Zahlen arbeiten willst, dann musst Du mit Zahlen arbeiten. "2,4 V" ist keine Zahl. Da werden Zeichenketten verglichen.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
Seppel90
User
Beiträge: 25
Registriert: Mittwoch 3. Februar 2021, 13:28

Danke für die Antwort. Dann muss ich die Spalte erst in Zahlen umwandeln. :)
Seppel90
User
Beiträge: 25
Registriert: Mittwoch 3. Februar 2021, 13:28

Hallo Zusammen,
ich muss hier noch einmal etwas Nachfragen. Das Umwandeln von Object zu Float hat funktioniert (natürlich nachdem ich die Zeilen formatiert habe). Jedoch habe ich dabei eine Sache nich bedacht und an der hänge ich gerade.

Im Dataframe habe ich in einer Spalte unterschiedliche Einheiten.

DC 1 E
57 0,969 V
58 0,960 V
59 0,974 V
60 22,7 mV
61 22,9 mV
62 22,7 mV
63 22,4 mV
64 4,480 V
65 2,390 V
66 2,902 V
(Ausschnitt aus einer Spalte des DF)

Bevor ich alles vormatiere muss ich diese erst auf eine Einheit bringen. Also aus 22,7mV muss 0,0227 V werden.

Wie kann ich das am besten elegant lösen?

Viele Grüße
Benutzeravatar
__blackjack__
User
Beiträge: 13123
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@Seppel90: Die Zeichenketten in Zahl und Einheit aufteilen, dann eine neue Spalte mit einem Faktor zu den Einheiten erstellen, und den Wert mit dem Faktor multiplizieren.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
Antworten