fixmint
DE

CSV-Export bereinigen: Probleme in richtiger Reihenfolge

Von · · 5 Min. Lesezeit

Um einen unsauberen CSV-Export zu bereinigen, arbeitest du in Schichten: zuerst die Zeichen, dann das Layout, dann die Bedeutung jeder Spalte. Eine CSV-Datei ist reiner Text. Deshalb liegen die meisten Probleme in falschen Zeichen, überflüssigen Zeilen oder Trennzeichen oder in Werten, die ein Programm anders liest als du. Korrigiere zuerst die Zeichen. Ein unsichtbares Leerzeichen kann verhindern, dass ein Datum als Datum erkannt wird, und dann scheitern die späteren Schritte ohne erkennbaren Grund.

CSV-BereinigerCSV mit Leerzeichen und DuplikatenKostenlos loslegen

Zeichen, die richtig aussehen, es aber nicht sind

Überflüssige Leerzeichen. Ein Leerzeichen am Anfang oder Ende einer Zelle oder zwei Leerzeichen mitten in einem Wert machen für einen Abgleich, einen Filter oder einen Join aus „Berlin “ und „Berlin“ zwei verschiedene Werte.

Unsichtbare Zeichen. Manche Zeichen brauchen auf dem Bildschirm keinen Platz:

  • Ein geschütztes Leerzeichen (U+00A0) sieht aus wie ein normales Leerzeichen, ist aber ein anderes Zeichen. Webseiten nutzen es, damit Wörter zusammenbleiben.
  • Ein Zeichen ohne Breite (U+200B) belegt gar keinen Platz.
  • Ein Byte-Order-Mark (U+FEFF) kann ganz am Dateianfang vor der ersten Kopfzeile stehen. Die Spalte sieht aus wie „id“, ist aber in Wirklichkeit „id“, daher scheitert eine Suche nach „id“.

Unsichtbare Zeichen entfernen zeigt, was es findet, bevor es etwas ändert.

Kaputte Buchstaben. „é“ statt „é“ ist ein Kodierungsfehler, der Mojibake heißt. Die Datei wurde als UTF-8 gespeichert, wo das é zwei Bytes belegt, und dann als Windows-1252 gelesen, wo aus diesen zwei Bytes zwei unzusammenhängende Buchstaben werden. Ein Apostroph „’“ wird auf dieselbe Weise zu „’“. Die Lösung: Lies die Datei als UTF-8 ein oder exportiere sie aus dem Quellsystem neu, mit ausgewähltem UTF-8. Bereits falsch gespeicherten Text zu reparieren ist heikel. Behalte deshalb das Original und arbeite mit einer Kopie.

Layout: Titelzeilen, Leerzeilen und Duplikate

Berichte beginnen oft mit einem Titel, einem Datum und einer Leerzeile über der eigentlichen Kopfzeile. Lösche alles über der Kopfzeile, sodass die erste Zeile die Spaltennamen enthält. Jede Spalte braucht einen Namen, und kein Name darf leer sein.

Jede Zeile sollte gleich viele Felder haben. Ein überzähliges Komma innerhalb eines Werts ohne Anführungszeichen fügt ein Feld hinzu, und jeder folgende Wert rutscht eine Spalte nach rechts. Zähle die Felder pro Zeile. Eine Zeile mit abweichender Anzahl ist kaputt.

Doppelte Einträge gibt es in zwei Arten. Zeilen, die in jeder Spalte identisch sind, entstehen meist durch doppeltes Exportieren oder Einfügen und lassen sich bedenkenlos entfernen. Zeilen mit gleichem Schlüssel, die sich anderswo unterscheiden, sind womöglich Aktualisierungen. Wenn du die falsche löschst, entfernst du unter Umständen die neueste Version. Prüfe sie deshalb vorher.

Datumsangaben: 03/04/2026 können zwei verschiedene Tage sein

03/04/2026 ist in einem Land der 3. April, in einem anderen der 4. März, und der Text verrät nicht, welcher gemeint ist. Schau dir die anderen Datumsangaben in derselben Spalte an. Ist irgendeine erste Zahl größer als 12, steht der Tag vorn. Ist irgendeine zweite Zahl größer als 12, steht der Monat vorn. Liegen alle Werte in beiden Zahlen bei 12 oder darunter, sagt die Datei es nicht, und du musst das Quellsystem fragen. Der Datentyp-Prüfer markiert eine solche Spalte als mehrdeutig, statt zu raten.

Sobald du die Reihenfolge kennst, wandle jedes Datum in ISO 8601 um, also in die Form Jahr-Monat-Tag wie 2026-04-03. Sie ist eindeutig und lässt sich als Text korrekt sortieren. Wandle gemischte Formate einzeln um, denn eine Spalte mit beiden Schreibweisen wird von den meisten Programmen uneinheitlich gelesen.

Zahlen als Text gespeichert

Eine Zahl wird als Text gespeichert, wenn ein Währungszeichen, ein Prozentzeichen oder ein Leerzeichen darin steht, etwa „€ 12“, „45%“ oder „1 234“ mit einem geschützten Leerzeichen. Auch Tausendertrennzeichen wie in „1,234.50“ führen oft dazu, dass ein Programm den Wert als Text liest. Eine Tabellenkalkulation richtet Textzahlen linksbündig aus, und Summen überspringen sie.

Dezimalkommas sind die Falle. In „1.234,50“ ist das Komma das Dezimaltrennzeichen, und der Punkt gruppiert Tausender. Bei „1,234.50“ ist es umgekehrt. „1,234“ kann daher in einem Export 1234 und in einem anderen 1.234 bedeuten. Ermittle vor dem Umwandeln das Gebietsschema der Quelle. Entferne dann die Tausendertrennzeichen und ersetze das Dezimalkomma durch einen Punkt.

Führende Nullen gehen verloren

Postleitzahlen, Artikelnummern und Kontonummern beginnen oft mit Nullen. Wird eine CSV-Datei in einer Tabellenkalkulation geöffnet, wird „01234“ als Zahl 1234 gelesen, und die Nullen sind weg. Beim Speichern bleibt der Verlust erhalten. Verlässlich ist daher nur das Quellsystem.

Eine Kennung ist Text, auch wenn sie wie eine Zahl aussieht, denn mit ihr rechnet man nie. Lass beim Bereinigen der CSV-Datei die Zahlenumwandlung für solche Spalten aus und öffne die Datei erneut aus dem Quellsystem statt aus einer Kopie, die eine Tabellenkalkulation gespeichert hat. Prüfe danach den Datentyp jeder Spalte, damit eine Postleitzahlspalte nicht unbemerkt wieder zu Zahlen wird. Auch Excel kann beim Öffnen einer CSV-Datei Werte verändern. Kontrolliere das Ergebnis daher in einer reinen Textansicht.

Typen prüfen, dann analysieren

Prüfe nach dem Bereinigen den Typ jeder Spalte. Ein einziges „N/A“ in einer Preisspalte macht die ganze Spalte zu Text, und die Summe wird dann falsch. Der Datentyp-Prüfer weist jeder Spalte einen Typ und einen Sicherheitswert zu und listet die Zellen auf, die nicht passen.

Analysiere danach die Spalten. Die CSV-Spaltenanalyse zeigt Lücken und Ausreißer in jeder Spalte. Ein Ausreißer kann ein echter Wert sein oder ein Fehler, etwa ein Preis, der tausendmal größer ist als die übrigen. Solche Fehler entstehen oft durch ein falsch gesetztes Dezimal- oder Trennzeichen.

Sonderfälle

  • Zeilenumbrüche in Anführungszeichen. Ein Wert in Anführungszeichen darf einen Zeilenumbruch enthalten. Ein Werkzeug, das die Datei nach Zeilen aufteilt, trennt diese Zeile in zwei, also nimm ein Programm, das Felder in Anführungszeichen versteht.
  • Semikolon-Dateien. Viele europäische Tabellenkalkulationen speichern CSV mit Semikolons, weil das Komma in ihrem Gebietsschema das Dezimaltrennzeichen ist. Prüfe das Trennzeichen, bevor du die Spalten liest.
  • Original aufbewahren. Schreibe das bereinigte Ergebnis in eine neue Datei und behalte den Export so, wie er war.

Die Reihenfolge als Checkliste

  1. Bewahre eine Kopie des ursprünglichen Exports auf.
  2. Entferne überflüssige Leerzeichen und unsichtbare Zeichen. Behebe kaputte Buchstaben nach Möglichkeit an der Quelle.
  3. Lösche die Titelzeilen, prüfe die Namen in der Kopfzeile und stelle sicher, dass jede Zeile gleich viele Felder hat.
  4. Finde die Duplikate und entscheide, welche Version du behältst.
  5. Wandle Datumsangaben in Jahr-Monat-Tag um, entferne Trennzeichen und mache Kennungen zu Text.
  6. Prüfe den Typ jeder Spalte und analysiere sie danach auf Lücken und Ausreißer.

Kurze Antworten

Warum scheitert meine Suche, obwohl die Werte gleich aussehen?

Meist sitzt in einer der Zellen ein Leerzeichen, ein geschütztes Leerzeichen oder ein Byte-Order-Mark. Entferne die unsichtbaren Zeichen und versuche es erneut.

Warum ändern sich meine Datumsangaben?

Ein Programm hat ein Datum mit Tag oder Monat vorn in der falschen Reihenfolge gelesen oder den Text in sein eigenes Datumsformat umgewandelt. Wandle die Datumsangaben vorher selbst in Jahr-Monat-Tag um.

Mit KI-Unterstützung aus dem Englisches Original übersetzt.

Kommentare

    Noch keine Kommentare. Schreib den ersten.

    Deine Bewertung (optional)

    Deine E-Mail wird nie angezeigt oder gespeichert.

    Cover von Open Data for AGI - Why Public, Free, and Open Datasets MatterOpen Data for AGI - Why Public, Free, and Open Datasets Matter

    Warum öffentliche, freie und offene Datensätze die allgemeine künstliche Intelligenz genauso prägen werden wie Algorithmen und Rechenleistung.

    $4.99Auf Gumroad holenAuf Englisch