Verschieben von CSV-Dateien in Python Teil 2: Leistungsmessung

Leistungsmessung

Fortsetzung von Letzte Geschichte Ich habe die Leistung verglichen, wenn ich numpy.array.T verwendet habe, was ich unangenehm ausprobiert habe, und wenn ich den Zip verwendet habe, der Kommentare erhalten hat.

Die Eingaben sind 1M.csv mit 1000 Zeilen und 1000 Spalten und 25M.csv mit 5000 Zeilen und 5000 Spalten.

Methode 1


import sys
import numpy
def csvt_1(fnin, fnout):
    fin = open(fnin, "r")
    fout = open(fnout, "w")
    for line in numpy.array([s.strip('\n').split(',') for s in fin]).T:
        fout.write(",".join(line) + "\n")
    fin.close()
    fout.close()

Methode 2


import sys
def csvt_2(fnin, fnout):
    fin = open(fnin, "r")
    fout = open(fnout, "w")
    for line in zip(*[s.strip('\n').split(',') for s in fin]):
        fout.write(','.join(line) + '\n')
    fin.close()
    fout.close()

Messergebnis (% Zeit% in IPython ausgeführt) Methode 1 1M.csv: ungefähr 500 ms 25M.csv: ungefähr 14s Methode 2 1M.csv: ungefähr 250 ms 25M.csv: ungefähr 11s

Ich habe es mehrmals gemessen, aber es ist ungefähr das gleiche. zip gewinnt. Was ist das? Ich frage mich, ob zip für die Bewertung von Verzögerungen gut funktioniert. Auf jeden Fall wurden aussagekräftige Ergebnisse erzielt.

Aber leider

Die Daten, über die mein Kollege gesprochen hat, haben mich veranlasst, diesen Code auszuprobieren. Sie sind ungefähr 40 GB groß. Dafür schien es, dass diese Methode nicht verwendet werden konnte, also schrieb ich eine Anwendung in C # separat und löste sie.

Recommended Posts

Verschieben von CSV-Dateien in Python Teil 2: Leistungsmessung
CSV in Python
Dateioperationen in Python
Dateiverarbeitung in Python
Dateimanipulation mit Python
Lesen Sie die Python-CSV-Datei
Geschwindigkeitsbewertung der Ausgabe von CSV-Dateien in Python
Registrieren Sie gemeinsam Daten im Firestore mithilfe der CSV-Datei in Python
Verwenden Sie das Messprotokoll mit Python
UI-Automatisierung Teil 2 in Python
Laden Sie die CSV-Datei mit Python herunter
[Python] Öffnen Sie die CSV-Datei in dem von Pandas angegebenen Ordner
Manipulation des Datei- / Ordnerpfads in Python
[Python] Mit Python in eine CSV-Datei schreiben
[Mit Python automatisiert! ] Teil 1: Datei einstellen
Linebot-Erstellung und Dateifreigabe mit Python
Erstellen Sie eine Binärdatei in Python
Lesen und Schreiben von Python CSV-Dateien
ORC, Parkettdateivorgänge in Python
[Mit Python automatisiert! ] Teil 2: Dateivorgang
Exklusive Steuerung mit Sperrdatei in Python
Dateneingabe / -ausgabe in Python (CSV, JSON)
GUI-Erstellung in Python mit tkinter Teil 1
AM-Modulation und Demodulation mit Python Part 2
CSV-Datei mit Python lesen (CSV-Datei herunterladen und analysieren)
[Python] Konvertieren Sie CSV-Dateibegrenzer in Tabulatortrennzeichen
Großer Unterschied in der Leistung von Ruby, Python und httpd
Schreiben Sie die O_SYNC-Datei in C und Python
Lesen Sie die Datei Zeile für Zeile mit Python
Lesen Sie die Datei Zeile für Zeile mit Python
[GPS] Erstellen Sie eine kml-Datei mit Python
[Teil1] Scraping mit Python → Organisieren Sie bis zu CSV!
[Python] Lesen Sie die angegebene Zeile in der Datei
Verschiedene Möglichkeiten, die letzte Zeile einer CSV-Datei in Python zu lesen
Mögliche Ergebnisse (potenzielle Ergebnisse) Hinweis auf kausale Inferenz in Python Teil 1
Lesen einer CSV-Datei mit Python 2/3
Erstellen Sie eine GIF-Datei mit Pillow in Python
DL, Bytewert und Löschen der Datei in Python3
Lesen Sie eine Datei mit verstümmelten Linien in Python
Von der Datei zur Diagrammzeichnung in Python. Grundstufe Grundstufe
[Python] Automatisierung zum Kopieren von Excel-Dateien implementiert
Lesen und Schreiben von CSV- und JSON-Dateien mit Python
Ich habe versucht, eine CSV-Datei mit Python zu lesen
Ein Forscher eines Pharmaunternehmens fasste das Scannen von Dateien in Python zusammen
GUI (WxPython) Ausführungsdatei (pyInstaller) [Windows] in Python3
Erstellen Sie eine MIDI-Datei in Python mit pretty_midi
Beispiel, um Python Kivy in eine Datei zu packen
Quadtree in Python --2
QGIS + Python Teil 2
Python in der Optimierung
CURL in Python
Skript-Python-Datei
Metaprogrammierung mit Python
Python 3.3 mit Anaconda
SendKeys in Python
QGIS + Python Teil 1
Redis Leistungsmessung
Epoche in Python