[PYTHON] Speichern Sie Pandas DataFrame als .csv.gz in Amazon S3

Beachten Sie, dass ich ein wenig süchtig war, als ich versuchte, den Pandas DataFrame zu komprimieren und als CSV-Datei in einem Amazon S3-Bucket zu speichern.

import gzip
from io import BytesIO
import pandas as pd
import boto3

def save_to_s3(df: pd.DataFrame, bucket: str, key: str):
    """Pandas DataFrame.csv.Speichern Sie in Amazon S3 als gz"""
    buf = BytesIO()
    with gzip.open(buf, mode="wt") as f:
        df.to_csv(f)
    s3 = boto3.client("s3")
    s3.put_object(Bucket=bucket, Key=key, Body=buf.getvalue())

Die Punkte sind wie folgt.

Zuerst dachte ich, wenn ich in pandas.DataFrame.to_csv eine Komprimierung = "gzip" angeben würde, wäre es nicht notwendig, sie explizit zu komprimieren, aber wenn ich ein dateiähnliches Objekt in "to_csv" eingeben würde, wäre es " Die Option "Komprimierung" scheint ignoriert zu werden und konnte nicht verwendet werden.

Recommended Posts

Speichern Sie Pandas DataFrame als .csv.gz in Amazon S3
Speichern Sie Pandas DataFrame als .csv.gz in Amazon S3
So weisen Sie den Index im Pandas-Datenrahmen neu zu
Laden Sie Pandas DataFrame als CSV-Datei herunter
Gibt es NaN im Pandas DataFrame?
Löschen Sie Zeilen mit beliebigen Werten in pandas DataFrame
Entfernen Sie Zeilen mit doppelten Indizes in pandas DataFrame
Überprüfen Sie, ob die erwartete Spalte in Pandas DataFrame vorhanden ist
Konvertieren Sie durch Kommas getrennte numerische Zeichenfolgen in Zahlen in Pandas DataFrame
So zeigen Sie DataFrame als Tabelle in Markdown an
Speichern Sie Pandas DataFrame als .csv.gz in Amazon S3
Laden Sie verschachtelten Json mit Pandas
Laden Sie Pandas DataFrame als CSV-Datei herunter
Python-Anwendung: Pandas # 3: Dataframe
Exportieren Sie den Pandas-Datenrahmen nach Excel
[Python3] Speichern Sie die Mittelwert- und Kovarianzmatrix in json mit Pandas
[Python] Verwenden Sie DataFrame, um beliebige Variablen und Arrays zusammen zu kennzeichnen und in csv [pandas] zu speichern.