#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']