read_csv один файл из нескольких файлов в gzip? - PullRequest
1 голос
/ 10 января 2020

В моем zip-файле tar.gz есть несколько файлов. Я хочу прочитать только один из них в pandas фрейм данных. Есть ли способ сделать это? Pandas может прочитать файл внутри gz. Но кажется, что нет никакого способа сказать ему, прочитайте один из них, если в gz есть несколько файлов.

Буду признателен за любые мысли. Бабак

1 Ответ

2 голосов
/ 10 января 2020

Чтобы прочитать указанный c файл в любой сжатой папке, нам просто нужно указать его имя или позицию, например, чтобы прочитать указанный c csv файл в заархивированной папке, мы можем просто открыть этот файл и прочитать содержимое.

from zipfile import ZipFile 
import pandas as pd 
# opening the zip file in READ mode 
with ZipFile("results.zip") as z:
    read = pd.read_csv(z.open(z.infolist()[2].filename))
    print(read)

Здесь выглядит структура папок с результатами, и я хочу прочитать test.csv:

$ data_description.txt sample_submission.csv test.csv train.csv
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...