Manchmal befindet sich der angegebene Datensatz nicht in einer einzelnen CSV -Datei. Sie sind alle auf verschiedenen Excel -Laken. Sie wissen bereits, dass es vorzuziehen ist, alle Rechen- oder Vorverarbeitungsaktivitäten in einem einzigen Datensatz anstelle von mehreren Datensätzen auszuführen. Es schneidet oder spart die Zeit, die wir für Vorverarbeitungsaufgaben ausgeben müssen. Als Datenanalyst oder Datenwissenschaftler können Sie sich häufig von zahlreichen CSV -Dateien überladen, die zusammengeführt werden müssen. Andererseits ist es nicht immer möglich, dass alle Dateien aus der einzelnen oder derselben Datenquelle erhalten werden und die gleichen Spalten-/Variablen -Namen und Datenstruktur aufweisen. In diesem Beitrag werden Sie beigebracht, zwei oder mehr CSV -Dateien mit einer ähnlichen oder anderen Spaltenstruktur zu kombinieren.
Warum CSV -Dateien kombinieren??
Ein Datensatz kann eine Sammlung oder eine Gruppe von Werten oder Zahlen sein, die sich auf ein bestimmtes Thema beziehen. Zum Beispiel sind die Testergebnisse jedes Schülers in einer bestimmten Klasse ein Beispiel für einen Datensatz. Aufgrund der Größe großer Datensätze werden sie häufig in separaten CSV -Dateien für verschiedene Kategorien gespeichert. Wenn wir beispielsweise einen Patienten auf eine bestimmte Krankheit untersuchen müssen, müssen wir jede Komponente berücksichtigen, einschließlich ihres Geschlechts, ihrer Krankenakte, des Alters, der Schwere der Krankheit usw. Infolgedessen sind die Kombination von CSV. Außerdem ist es besser, einen einzelnen Datensatz zu arbeiten und zu verwalten, anstatt mehrere Datensätze, während die Berechnungs- oder Vorverarbeitungsaufgaben ausgeführt werden. Es speichert Speicher und andere Rechenressourcen
So kombinieren Sie CSV -Dateien in Python?
Es gibt mehrere Möglichkeiten und Methoden, um zwei oder mehr CSV -Dateien in Python zu kombinieren. Im folgenden Abschnitt verwenden wir append (), concat () und merge () -Funktionen usw., Um CSV -Dateien in Pandas DataFrame zu kombinieren, werden DataFrames in eine einzelne CSV -Datei konvertiert. Wir werden unterrichten, wie mehrere CSV -Dateien mit einer ähnlichen oder variablen Spaltenstruktur kombiniert werden können.
Methode Nr. 1: Kombinieren Sie CSVs mit ähnlichen Strukturen oder Spalten
Unser aktuelles Arbeitsverzeichnis verfügt über zwei CSV -Dateien, "test1" und "test2":.
Beispiel Nr. 1: Verwenden Sie die Funktion append ()
Beide CSV -Dateien haben die gleiche Struktur. In dieser Methode wird die Funktion glob () verwendet, um die CSV -Dateien nur im Arbeitsverzeichnis aufzulisten. Dann werden wir „Pandas verwenden.Datenrahmen.append () “, um unsere CSV -Dateien zu lesen (mit einer gemeinsamen Tabellenstruktur).
Ausgang:
Mit der Anhangfunktion haben wir jede Datenzeile von test2 angehängt oder hinzugefügt oder hinzugefügt.CSV unter den Datenreihen von Test1.CSV, wie ersichtlich ist, dass alle Datenzeilen der Datei kombiniert wurden. Um diesen Datenrahmen in CSV umzuwandeln, können wir die Funktion to_csv () verwenden.
Dadurch wird in unserem Arbeitsverzeichnis eine kombinierte CSV -Datei mit CSV -Dateien von 'Test1' und 'test2' mit dem angegebenen Namen i erstellt. I.e., zusammengeführt.CSV.
Beispiel Nr. 2: Verwenden von concat () Funktion
Wir werden das Pandas -Modul zuerst importieren. Die Kartenmethode liest jede CSV -Datei, die wir mit PD übergeben haben.read_csv (). Diese zugeordneten Dateien (CSV -Dateien) werden dann standardmäßig entlang der Zeilenachse unter Verwendung der Funktion PD kombiniert.concat (). Wenn wir CSV -Dateien horizontal kombinieren möchten, können wir Achse = 1 übergeben. Das Angeben des Ignore Index = True erstellt auch kontinuierliche Indexwerte für den kombinierten Datenrahmen.
Die PD.Read_csv () wird in der Funktion concat () übergeben, um die CSV.
Wir haben einen Datenrahmen mit kombinierten Daten aller CSV -Dateien im Arbeitsverzeichnis erhalten. Lassen Sie es uns nun in eine CSV -Datei umwandeln.
Unser kombinierter CSV wird im aktuellen Verzeichnis erstellt.
Methode Nr. 2: Kombinieren Sie CSVs mit verschiedenen Strukturen oder Säulen
Wir haben besprochen, CSV -Dateien mit denselben Spalten und Struktur in der ersten Methode zu kombinieren. In dieser Methode kombinieren wir CSV -Dateien mit verschiedenen Spalten und Strukturen.
Beispiel Nr. 1: Verwenden von Merge () -Funktion
Die „Pandas.Merge () ”-Funktion im PANDAS -Modul kann zwei CSV -Dateien kombinieren. Das Zusammenführen bezieht sich einfach auf die Kombination von zwei Datensätzen in einem einzigen Datensatz basierend auf freigegebenen Spalten oder Attributen.
Wir können Datenrahmen in vier verschiedenen Arten des Join zusammenführen:
Um diese Arten von Zusammenführungen durchzuführen, werden wir zwei CSV -Dateien verwenden.
Beachten Sie, dass mindestens ein Attribut oder eine Spalte von beiden CSV -Dateien gemeinsam genutzt werden muss. Wie festgestellt, werden die Spalte „Name“ und einige seiner Attribute von beiden CSV -Dateien gemeinsam genutzt.
Zusammenführen mit innerem Join
Angeben des Parameters Wie = "Inner" in der Funktion merge () kombiniert die beiden Datenrahmen gemäß der angegebenen Spalte und liefert dann einen neuen Datenrahmen, der nur die Zeilen mit identischen/gleichen Werten in beiden Originaldatenfrikten enthält.
Wie erdenkt, dass die Funktion beide CSV -Dateien zusammengeführt und die Zeilen auf der Grundlage gemeinsamer Attribute des Spaltennamens zurückgegeben hat.
Verwenden Sie mit dem rechten äußeren Join
Wenn der Parameter wie = "rechts" angegeben ist, werden beide Datenrahmen basierend auf der Spalte kombiniert, für die wir für Parameter 'auf' angegeben sind. Und ein neuer Datenrahmen, der alle Zeilen aus dem rechten Datenrahmen enthält, einschließlich aller Zeilen, für die der linke Datenrahmen keine Werte enthält.
Zusammenführen mit dem linken äußeren Join
Wenn der Parameter als "links" angegeben wird, werden die beiden Datenrahmen basierend auf der angegebenen Spalte unter Verwendung des Parameters "on" kombiniert, wobei ein neuer Datenrahmen mit allen Zeilen aus dem linken Datenrahmen sowie alle Zeilen mit NAN enthält oder NULL -Werte im rechten Datenrahmen und legt den rechten Datenframespaltenwert auf NAN fest.
Zusammenführen mit Full Outer Join
Wenn wie = "äußere" angegeben ist, werden die beiden Datenrahmen abhängig von der für den Parameter 'on' angegebenen Spalte kombiniert, wobei ein neuer Datenrahmen zurückgegeben wird, der die Zeilen sowohl aus DF1- als auch DF2 -Datenrahmen enthält und NAN als Wert für alle Zeilen festlegt Für welche Daten in einem der Datenrahmen fehlen.
Beispiel Nr. 2: Kombinieren Sie alle CSV -Dateien im Arbeitsverzeichnis
In dieser Methode werden wir das Glob -Modul verwenden, um alle zu kombinieren .CSV -Dateien in einen PANDAS -Datenframe. Alle Bibliotheken mussten zuerst importiert werden. Als nächstes setzen wir einen Pfad für jede CSV -Datei, die wir kombinieren möchten. Der Dateipfad ist das erste Argument für das Betriebssystem.Weg.Join () -Funktion im folgenden Beispiel und das zweite Argument sind entweder die Pfadkomponenten oder .CSV -Dateien, die verbunden werden sollen. Hier der Ausdruck '*.CSV 'findet und gibt jede Datei im Arbeitsverzeichnis, das mit dem endet .CSV -Dateierweiterung. The Glob.Die Funktion von Globe (Dateien mitgekommen) akzeptiert eine Liste der Namen der zusammengeführten Dateien als Eingabe und gibt eine Liste aller zusammengeführten/kombinierten Dateien aus.
Dieses Skript gibt einen Datenrahmen mit kombinierten Daten aller CSV -Dateien in unserem Arbeitsverzeichnis zurück.
Dieser Datenrahmen wird in eine CSV -Datei umgewandelt, und die Funktion to_csv () wird für diese Konvertierung verwendet. Diese neue CSV -Datei ist die kombinierten CSV -Dateien, die aus allen CSV -Dateien erstellt wurden, die im aktuellen Arbeitsverzeichnis gespeichert sind.
Abschluss
In diesem Beitrag haben wir besprochen, warum wir CSV -Dateien kombinieren müssen. Wir haben besprochen, wie zwei oder mehr CSV -Dateien in Python kombiniert werden können. Wir haben dieses Tutorial in zwei Abschnitte unterteilt. Im ersten Abschnitt haben wir erläutert, wie append () und concat () Funktionen verwendet werden, um CSV. Im zweiten Abschnitt haben wir die Merge () -Methode, OS, verwendet.Weg.Join () und Glob -Methode zur Kombination von CSV -Dateien verschiedener Spalten und Strukturen.