Python teilt CSV in mehrere Dateien auf

Zeeshan Afridi 21 Juni 2023
  1. Erstellen Sie eine CSV-Datei in Python mit Pandas
  2. Teilen Sie eine CSV-Datei in Python in mehrere Dateien auf
  3. Abschluss
Python teilt CSV in mehrere Dateien auf

In diesem Artikel erfahren Sie, wie Sie eine CSV-Datei in Python in mehrere Dateien aufteilen. Wir werden Pandas verwenden, um eine CSV-Datei zu erstellen und sie in mehrere andere Dateien aufzuteilen.

Erstellen Sie eine CSV-Datei in Python mit Pandas

Um eine CSV-Datei in Python mit Pandas zu erstellen, müssen Sie Pandas zuerst über die Befehlszeilenschnittstelle (CLI) installieren.

pip install pandas

Dieser Befehl lädt Pandas herunter und installiert es auf Ihrem lokalen Computer. Mit dem Schlüsselwort import können Sie es einfach in Ihr aktuelles Python-Programm importieren.

Lassen Sie uns überprüfen, ob Pandas installiert ist oder nicht.

Codebeispiel:

import pandas as pd

print("The Version of Pandas is: ", pd.__version__)

Ausgang:

The Version of Pandas is: 1.3.5

Lassen Sie uns nun eine CSV-Datei erstellen.

Codebeispiel:

import pandas as pd

# create a data set
data_dict = {
    "Roll no": [1, 2, 3, 4, 5, 6, 7, 8],
    "Gender": ["Male", "Female", "Female", "Male", "Male", "Female", "Male", "Female"],
    "CGPA": [3.5, 3.3, 2.7, 3.8, 2.4, 2.1, 2.9, 3.9],
    "English": [76, 77, 85, 91, 49, 86, 66, 98],
    "Mathematics": [78, 87, 54, 65, 90, 59, 63, 89],
    "Programming": [99, 45, 68, 85, 60, 39, 55, 88],
}

# create a data frame
data = pd.DataFrame(data_dict)

# convert the data frame into a csv file
data.to_csv("studesnts.csv")

# Print the output
print(data)

Ausgang:

   Roll no  Gender  CGPA  English  Mathematics  Programming
0        1    Male   3.5       76           78           99
1        2  Female   3.3       77           87           45
2        3  Female   2.7       85           54           68
3        4    Male   3.8       91           65           85
4        5    Male   2.4       49           90           60
5        6  Female   2.1       86           59           39
6        7    Male   2.9       66           63           55
7        8  Female   3.9       98           89           88

Teilen Sie eine CSV-Datei in Python in mehrere Dateien auf

Wir haben erfolgreich eine CSV-Datei erstellt. Lassen Sie uns es in mehrere Dateien aufteilen, aber verschiedene Matrizen könnten verwendet werden, um eine CSV auf der Basis von Spalten oder Zeilen aufzuteilen.

Teilen Sie eine CSV-Datei basierend auf Zeilen

Lassen Sie uns eine CSV-Datei auf der Grundlage von Zeilen in Python aufteilen.

Codebeispiel:

import pandas as pd

# read DataFrame
data = pd.read_csv("students.csv")

# number of csv files along with the row
k = 2
size = 4

for i in range(k):
    df = data[size * i : size * (i + 1)]

    df.to_csv(f"students{i+1}.csv", index=False)

file1 = pd.read_csv("students1.csv")
print(file1)
print("\n")
file2 = pd.read_csv("students2.csv")
print(file2)

Ausgang:

      Roll no  Gender  CGPA  English  Mathematics  Programming
0        1    Male     3.5       76           78           99
1        2    Female   3.3       77           87           45
2        3    Female   2.7       85           54           68
3        4    Male     3.8       91           65           85

      Roll no  Gender  CGPA  English  Mathematics  Programming
4        5   Male     2.4       49           90           60
5        6   Female   2.1       86           59           39
6        7   Male     2.9       66           63           55
7        8   Female   3.9       98           89           88

Der obige Code hat die Datei students.csv in zwei mehrere Dateien aufgeteilt, student1.csv und student2.csv. Die Datei wird zeilenweise getrennt; die Zeilen 0 bis 3 werden in der Datei student.csv und die Zeilen 4 bis 7 in der Datei student2.csv gespeichert.

Teilen Sie eine CSV-Datei basierend auf Spalten

Wir können jede CSV-Datei basierend auf Spaltenmatrizen mit Hilfe der Funktion groupby() aufteilen. Die Funktion groupby() gehört zur Pandas-Bibliothek und verwendet Gruppendaten.

In diesem Fall gruppieren wir die Daten Schüler nach Geschlecht.

Codebeispiel:

import pandas as pd

# read DataFrame
data = pd.read_csv("students.csv")

for (gender), group in data.groupby(["Gender"]):
    group.to_csv(f"{gender} students.csv", index=False)

print(pd.read_csv("Male students.csv"))
print("\n")
print(pd.read_csv("Female students.csv"))

Ausgang:

       Roll no  Gender  CGPA  English  Mathematics  Programming
0        1      Male   3.5       76           78           99
1        4      Male   3.8       91           65           85
2        5      Male   2.4       49           90           60
3        7      Male   2.9       66           63           55


       Roll no  Gender  CGPA  English  Mathematics  Programming
0        2      Female   3.3       77           87           45
1        3      Female   2.7       85           54           68
2        6      Female   2.1       86           59           39
3        8      Female   3.9       98           89           88

Abschluss

Das Aufteilen von Daten ist eine nützliche Datenanalysetechnik, die dabei hilft, die Daten zu verstehen und effizient zu sortieren.

In diesem Artikel haben wir besprochen, wie Sie eine CSV-Datei mit der Pandas-Bibliothek erstellen. Darüber hinaus haben wir die beiden gängigen Datenaufteilungstechniken besprochen, die zeilenweise und die spaltenweise Datenaufteilung.

Zeeshan Afridi avatar Zeeshan Afridi avatar

Zeeshan is a detail oriented software engineer that helps companies and individuals make their lives and easier with software solutions.

LinkedIn

Verwandter Artikel - Python CSV