Translocation de fichiers CSV en Python Partie 2: Mesure des performances

Mesure du rendement

Suite de Dernière histoire J'ai comparé les performances lors de l'utilisation de numpy.array.T, que j'ai essayé de manière désagréable, et lors de l'utilisation du zip qui a reçu des commentaires.

Les entrées sont 1M.csv avec 1000 lignes et 1000 colonnes et 25M.csv avec 5000 lignes et 5000 colonnes.

Méthode 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()

Méthode 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()

Résultat de la mesure (% time% run dans IPython) Méthode 1 1M.csv: environ 500ms 25M.csv: environ 14s Méthode 2 1M.csv: environ 250ms 25M.csv: environ 11s

Je l'ai mesuré plusieurs fois, mais c'est à peu près la même chose. zip gagne. Qu'est-ce que c'est? Je me demande si zip fonctionne bien pour l'évaluation des délais. Quoi qu'il en soit, des résultats significatifs ont été obtenus.

Mais malheureusement

Les données dont mon collègue a parlé et qui m'ont poussé à essayer ce code ont une taille d'environ 40 Go. Pour cela, cette méthode ne semblait pas fonctionner, j'ai donc écrit une application en C # séparément et l'ai résolue.

Recommended Posts

Translocation de fichiers CSV en Python Partie 2: Mesure des performances
CSV en Python
Opérations sur les fichiers en Python
Traitement de fichiers en Python
Manipulation de fichiers avec Python
Lire le fichier csv Python
Évaluation de la vitesse de sortie du fichier CSV en Python
Enregistrez collectivement des données dans Firestore à l'aide d'un fichier csv en Python
Utiliser le protocole de mesure avec Python
UI Automation Partie 2 en Python
Télécharger le fichier csv avec python
[Python] Ouvrez le fichier csv dans le dossier spécifié par pandas
Manipulation de chemin de fichier / dossier en Python
[Python] Ecrire dans un fichier csv avec Python
[Automatisé avec python! ] Partie 1: fichier de configuration
Création de Linebot et partage de fichiers avec Python
Créer un fichier binaire en Python
Lecture et écriture de fichiers CSV Python
ORC, opérations de fichier Parquet en Python
[Automatisé avec python! ] Partie 2: Fonctionnement des fichiers
Contrôle exclusif avec fichier de verrouillage en Python
Entrée / sortie de données en Python (CSV, JSON)
Création d'interface graphique en python à l'aide de tkinter partie 1
Modulation et démodulation AM avec Python Partie 2
Lire le fichier CSV avec python (Télécharger et analyser le fichier CSV)
[Python] Convertit les délimiteurs de fichier csv en délimiteurs de tabulation
Grande différence dans les performances de ruby, python, httpd
Ecrire le fichier O_SYNC en C et Python
Lisez le fichier ligne par ligne avec Python
Lisez le fichier ligne par ligne avec Python
[GPS] Créer un fichier kml avec Python
[Part1] Scraping avec Python → Organisez jusqu'à csv!
[Python] Lire la ligne spécifiée dans le fichier
Différentes façons de lire la dernière ligne d'un fichier csv en Python
Résultats potentiels (résultats potentiels) Note d'inférence causale dans Python Partie 1
Comment lire un fichier CSV avec Python 2/3
Créer un fichier GIF en utilisant Pillow en Python
DL, valeur d'octet et suppression de fichier en Python3
Lire un fichier contenant des lignes brouillées en Python
Du dessin de fichier au graphique en Python. Élémentaire élémentaire
[Python] Automatisation implémentée pour la copie de fichiers Excel
Lire et écrire des fichiers CSV et JSON avec Python
J'ai essayé de lire un fichier CSV en utilisant Python
Un chercheur d'une société pharmaceutique a résumé l'analyse de fichiers en Python
Fichier d'exécution GUI (WxPython) (pyInstaller) [Windows] dans Python3
Créez un fichier MIDI en Python en utilisant pretty_midi
Exemple pour mettre Python Kivy dans un fichier
Quadtree en Python --2
QGIS + Python Partie 2
Python en optimisation
CURL en Python
Fichier python de script
Métaprogrammation avec Python
Python 3.3 avec Anaconda
SendKeys en Python
QGIS + Python Partie 1
Mesure de la performance Redis
Époque en Python