Konvertieren Sie nach dem Aufrufen der Shell-Datei unter Python CSV in Parkett.

Was Sie insgesamt tun möchten

Ich muss viele CSV-Dateien in Parkett konvertieren. Da es in der Kopfzeile der CSV-Datei überhaupt keine Spaltennamenszeile gibt



Annahmen

Der dem CSV-Header hinzugefügte Spaltenname ist der Titel für den Wert in der Parkettdatei. Wenn die Kopfzeile nicht vorhanden ist und die Daten plötzlich vorhanden sind Jeder Titel der Ausgabe-Parkettdatei enthält die Daten in der ersten Zeile.

Rufen Sie Shell von Python aus auf

Das Hinzufügen einer CSV-Kopfzeile kann auch in Python geschrieben werden. Es war also relativ einfach, Shell hinzuzufügen Ich habe es in Shell erstellt und die Datei aus Python aufgerufen.

qiita.py


import subprocess

# comment
cmd = './add_header.sh'
subprocess.call(cmd, shell=True)

Durch Angabe von Shell im Unterprozess Sie können eine externe Shell-Datei aufrufen.

add_header.sh


##!/usr/bin/env bash
for file in `\find from_dir -maxdepth 1 -type f`; do
    gsed -i '1iheader1,header2' $file
done

"1i" ist erforderlich, wenn gsed aufgerufen wird.

gsed ・ ・ ・ Bitte installieren Sie gnu-sed.

■ CSV-Dateikopf des Ausführungsergebnisses header1,header2

Konvertieren Sie CSV in Parkett

Ich musste eine große Anzahl von CSV-Dateien, die auf S3 vorhanden waren, in Parkett konvertieren. Alle Dateien werden lokal heruntergeladen.

qiita2.py


import pyarrow as pa
import pyarrow.parquet as pq
import pandas as pd
import glob

from_dir = './from_dir/'
to_dir = './to_dir/'

#from_Lesen Sie alle CSV in dir
files = glob.glob(from_dir + "*", recursive=True)

#Konvertieren Sie jeweils eine Datei in_In dir speichern
for file in files:
    path_name = file.split('/')
    df = pd.read_csv(file)
    table = pa.Table.from_pandas(df)
    pq.write_table(table, to_dir + path_name[2] + '.pq')

CSV-Datei lesen, Ausgabe ist Pandas Die Umstellung auf Parkett ist mit Pyarrow einfach

Recommended Posts

Konvertieren Sie nach dem Aufrufen der Shell-Datei unter Python CSV in Parkett.
[Python] So konvertieren Sie eine Datenbankdatei in CSV
[Python] Konvertieren Sie CSV-Dateibegrenzer in Tabulatortrennzeichen
Konvertieren Sie XLSX in CSV in der Befehlszeile
Ich habe versucht, eine CSV-Datei mit Python zu berühren
So konvertieren Sie eine JSON-Datei mit Python Pandas in eine CSV-Datei
[Python] Mit Python in eine CSV-Datei schreiben
Ausgabe in eine CSV-Datei mit Python
Erstellen Sie ein Shell-Skript, um die Python-Datei mehrmals auszuführen
So aktualisieren Sie die Python-Version von Cloud Shell in GCP
So konvertieren Sie Python in eine exe-Datei
Konvertieren Sie die psd-Datei in Python in png
Lesen Sie die CSV-Datei mit Python und konvertieren Sie sie unverändert in DataFrame
Lesen einer CSV-Datei mit Python 2/3
[Python] Konvertieren von DICOM in PNG oder CSV
Konvertieren Sie die SVG-Datei mit Python in png / ico
Schreiben von Protokollen in eine CSV-Datei (Python, C-Sprache)
Einführung in Python mit Atom (unterwegs)
Konvertieren Sie den Zeichencode der Datei mit Python3
Speichern Sie Suchergebnisse auf Twitter in CSV.
Verschiedene Möglichkeiten, die letzte Zeile einer CSV-Datei in Python zu lesen
Bei der Konvertierung von CSV in JSON mit Python bin ich auf einen Zeichencode gestoßen
[Python] Scannen Sie den Ordner einschließlich der Unterordner → Exportieren Sie die Dateiliste in CSV
Zeichnen Sie ein Faltlinien- / Streudiagramm mit Python Matplotlib für die CSV-Datei (2 Spalten).
Python-Übung Konvertieren Sie den eingegebenen westlichen Kalender in einen japanischen Kalender
Überlegen Sie, wie Sie Python auf Ihrem iPad programmieren können
Schritte zum Installieren des neuesten Python auf Ihrem Mac
[Python] Konvertiert PDF-Text für jede Seite in CSV (2/24 Postscript)
Lesen Sie die XML-Datei anhand des Python-Tutorials
So konvertieren Sie Json-Dateien in das CSV- oder EXCEL-Format
Python-Skript, das eine JSON-Datei aus einer CSV-Datei erstellt
Wie man Python auf Android genießt !! Programmieren für unterwegs !!
Lesen Sie die Python-CSV-Datei
Konvertieren Sie die Finanzinformationen aller börsennotierten Unternehmen der letzten 5 Jahre in eine CSV-Datei
[Python] Öffnen Sie die CSV-Datei in dem von Pandas angegebenen Ordner
[Python] Ändern Sie den Namen der Bilddatei in eine Seriennummer
So wechseln Sie die Konfigurationsdatei, die von Python gelesen werden soll
Ändern Sie das Standardausgabeziel in eine Datei in Python
[Hyperledger Iroha] Hinweise zur Verwendung des Python SDK
Holen Sie sich nur die Python-Version (z. B. 2.7.5) in die CentOS 7-Shell
[Python] Lesen Sie die CSV-Datei und zeigen Sie die Abbildung mit matplotlib an
Verwenden Sie pyOCR, um die Beschreibung auf der Karte in Text umzuwandeln
So stellen Sie Pybot, das einfachste Python-Lehrbuch, auf Heroku bereit
Batch-Konvertierung aller XLSX-Dateien im Ordner in CSV-Dateien
Führen Sie die Python-Datei aus, nachdem Sie die virtuelle Python-Umgebung mit der Batch-Datei aktiviert haben
Speichern Sie Bilder im Web mit Python (Colab) auf einem Laufwerk.
Ich habe versucht, das Python-Skript unter Windows 10 von 2.7.11 auf 3.6.0 zu ändern
Versuchen Sie, die verstümmelten Zeichen im angehängten Dateinamen mit Python zu entschlüsseln
Konvertieren Sie eine Excel-Datei für verschiedene Zwecke in Python in Text
[Python] Datum in Zeichenfolge konvertieren
Konvertieren Sie numpy int64 in python int
[Python] Liste in Pandas konvertieren [Pandas]
Konvertieren Sie HTML in eine Textdatei
Aktualisieren Sie die Python, die Sie auf Ihrem Mac hatten, auf 3.7-> 3.8
Konvertieren Sie das Scratch-Projekt in Python
[Python] Konvertieren Sie Shift_JIS in UTF-8
Schreiben Sie mit Python in csv