Zwei CSV vergleichen

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
DominikD50
User
Beiträge: 1
Registriert: Samstag 27. September 2025, 23:05

Hallo

würde gerne 2 csv auf Änderungen vergleichen.
Es könnne Zeilen dazu kommen wegfallen oder anders sortiert sein
Die Datei hat keine Überschrift.
Spalte C soll die gemeinsame sein und dann D und E auf unterschiede verglichen werden und dann in csv ausgegeben werden
Ist in der alten eine Zeile da und in der neuen nicht egal
Ist in der neuen eine da dann Ausgabe in Datei
Kann mir hier jemand helfen?
Danke
imonbln
User
Beiträge: 194
Registriert: Freitag 3. Dezember 2021, 17:07

Mir ist nicht ganz klar, wie die Datei am Ende aussehen soll, aber das macht, denke ich nichts. Denn das Forum ist ja Hilfe zu selbst Hilfe. 

Deine Schritte sollten also ganz grob sein, beide CSV Dateien einlesen, beide nach Spalte C Sortieren,
dann durch die neue Tabelle durch Iterieren, jeweils Prüfen, ob der Wert von Spalte C auch in der alten vorhanden ist. Wenn ja, dann vergleich von D und E machen, das Ergebnis Speichern, wenn nicht, ist es ein neuer Eintrag.

Happy Coding und wenn Du konkrete Probleme hast und etwas Code zeigst (Codetags nicht vergessen), können wir, Dir sicher weiter helfen.
Pedroski55
User
Beiträge: 24
Registriert: Freitag 25. Juli 2025, 00:20

Was steht in Spalte C? Eine Zahl? Schriftliches? Wenn Zahl, dann sollte man immer jeweils in csv1 und csv2 die gleichen Zahlen finden, danach Spalten D und E vergleichen, falls unterschiedlich, die Zeilen exportieren.

Wie lange sind die csvs? Millionen von Einträgen? Schon wieder ein Börsenguru?

Besser wenn du von jeder CSVdatei ein kleines Beispiel hier hinterlegst, dann hätte man erst einen Überblick.
mechanicalStore
User
Beiträge: 183
Registriert: Dienstag 29. Dezember 2009, 00:09

Guck dir das Pandas Modul an. Deine Aufgabe kriegst du mit ein paar Zeilen Code hin.
oldboyJR
User
Beiträge: 69
Registriert: Donnerstag 28. März 2024, 16:19

Es gibt ein csv Modul ggf nachladen (adminrechte nötig).Immer die passenden syntax der version beachten. paralel beide öffnen vergleichen
Zuletzt geändert von oldboyJR am Mittwoch 8. Oktober 2025, 11:16, insgesamt 1-mal geändert.
Benutzeravatar
__blackjack__
User
Beiträge: 14184
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@oldboyJR: Das `csv`-Modul ist in der Standardbibliothek, da muss man nichts ”nachladen” und es sind keine Adminrechte nötig.
“Every thinking person fears nuclear war and every technological nation plans for it. Everyone knows
it's madness, and every country has an excuse.” — Carl Sagan, Cosmos, Episode 13: Who Speaks for Earth?
oldboyJR
User
Beiträge: 69
Registriert: Donnerstag 28. März 2024, 16:19

Adminrechte sind nur notwendig wenn man Module die nicht vorhanden sind laden möchte oder wenn es durch anderes freigeschaltet ist.
Benutzeravatar
sparrow
User
Beiträge: 4577
Registriert: Freitag 17. April 2009, 10:28

@oldboyJR: Das ist so nicht richtig.
Benutzeravatar
__blackjack__
User
Beiträge: 14184
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@oldboyJR: Module entstehen nicht auf magische Weise wenn man Adminrechte hat. Nicht vorhandene Module müsste man installieren. Dazu braucht man aber nicht zwangsläufig Adminrechte. Man kann Module auch für den aktuellen Benutzer installieren, oder in ein venv.

Umgekehrt kann es auch bei einem Programm für das alle Module vorhanden sind, für das Ausführen des Programms Adminrechte braucht, wenn das Programm selber irgendetwas macht, das diese Rechte benötigt.
“Every thinking person fears nuclear war and every technological nation plans for it. Everyone knows
it's madness, and every country has an excuse.” — Carl Sagan, Cosmos, Episode 13: Who Speaks for Earth?
avivadee
User
Beiträge: 4
Registriert: Donnerstag 3. Juli 2025, 06:51

Hallo! Auch wenn der Beitrag schon älter ist: Für so einen Vergleich kannst du Python und das Modul pandas verwenden. Du liest beide CSV-Dateien ein, nutzt Spalte C als Schlüssel und vergleichst D und E. Unterschiede kannst du dann herausfiltern und wieder in ein neues CSV schreiben. Wenn du magst, kann ich dir gern ein passendes Skriptbeispiel geben!
Antworten