Как открыть несколько csv-файлов из файла большего размера в код?

#python #pandas #csv #file

#python #pandas #csv #файл

Вопрос:

Итак, у меня есть файл, внутри которого 1000 файлов csv. Поэтому вместо того, чтобы извлекать 500 файлов csv, мне было интересно, какой код можно написать, который мог бы извлекать все файлы csv, а затем добавлять их в список. Представьте себе что-то вроде:

 csv_file_list = []    

for csv in big_file:
    csv_file_list.append(csv)
 

Итак, это то, что я пытаюсь сделать, теперь, очевидно, это приведет к ошибке, поэтому мой вопрос в том, как правильно это закодировать?

Комментарии:

1. файл, содержащий 1000 файлов CSV или 1000 путей к файлам CSV?

2. файл, содержащий 1000 csv-путей, в каждом пути которых есть наборы данных

3. Вы должны читать CSV-файлы в цикле и добавлять их данные в список..

4. Не могли бы вы показать код, который бы это сделал? Должен ли я читать их с помощью функции pandas read_csv?

5. каков формат вашего файла? вам нужно будет привести пример, чтобы получить помощь

Ответ №1:

 import pandas as pd
import os
dataset = []

folder_path = 'path to your folder here in commas'

for csv in os.listdir(folder_path):
    dataset.append(pd.read_csv(os.path.join(folder_path,csv)))
 

Комментарии:

1. Хорошо, но, например, как мне вызвать большой файл? Скажем, путь — Users/benitocano/Desktop/Mega Package Data/us_1500_tickers_A_C_hgj7gj. Как мне написать это так, чтобы компьютер мог понять?

2. ваш большой файл тоже csv?

3. Нет, это папка

4. проверьте мой код сейчас. вы должны написать путь в 4-й строке, внутри ‘ ‘ этих запятых

Ответ №2:

Вот пример. Это идея?

 numCSVFILES = 10
csv_paths = ['/'.join(['part%d%d'%(j,i) for i in range(3)]) '/csvfile%d.csv'%j for j in range(numCSVFILES)]
with open('junk.txt','w') as fio:
    fio.write('n'.join(csv_paths))

with open('junk.txt','r') as fio:
    csv2_paths = fio.read().split('n')

print(csv2_paths)
 

Вывод

 ['part00/part01/part02/csvfile0.csv', 'part10/part11/part12/csvfile1.csv', 'part20/part21/part22/csvfile2.csv', 'part30/part31/part32/csvfile3.csv', 'part40/part41/part42/csvfile4.csv', 'part50/part51/part52/csvfile5.csv', 'part60/part61/part62/csvfile6.csv', 'part70/part71/part72/csvfile7.csv', 'part80/part81/part82/csvfile8.csv', 'part90/part91/part92/csvfile9.csv']