J'ai besoin d'extraire un fichier gz que j'ai téléchargé d'un site FTP sur un serveur de fichiers Windows local. J'ai les variables définies pour le chemin local du fichier, et je sais qu'il peut être utilisé par GZIP embrouillé.
Comment puis-je faire ceci? Le fichier à l'intérieur du fichier GZ est un fichier XML.
import gzip
import shutil
with gzip.open('file.txt.gz', 'rb') as f_in:
with open('file.txt', 'wb') as f_out:
shutil.copyfileobj(f_in, f_out)
import gzip
f = gzip.open('file.txt.gz', 'rb')
file_content = f.read()
f.close()
with gzip.open('features_train.csv.gz') as f:
features_train = pd.read_csv(f)
features_train.head()
from sh import gunzip
gunzip('/tmp/file1.gz')
Ce n'est pas une réponse exacte car vous utilisez des données XML et qu'il n'y a actuellement pas de fonction pd.read_xml()
(à partir de v0.23.4), mais pandas (à partir de v0.21.0) peut décompresser le fichier pour vous! Merci Wes!
import pandas as pd
import os
fn = '../data/file_to_load.json.gz'
print(os.path.isfile(fn))
df = pd.read_json(fn, lines=True, compression='gzip')
df.tail()