Как объединить несколько файлов CSV из нескольких папок в Python? - PullRequest
0 голосов
/ 18 апреля 2020

У меня есть несколько CSV-файлов, каждый из которых представляет данные за день без заголовка! больше похоже на month-1 / day-1.csv ... day-30.csv - month-2 / day-1.csv ... et c как мне объединить все эти CSV-файлы в один большой CSV-файл что содержит их все?

Ответы [ 2 ]

0 голосов
/ 18 апреля 2020

Предполагается, что ваш ввод находится в папке in_data, а выход - в папку с именем out_data, а обе папки находятся в каталоге вашего ноутбука.

import pandas as pd
import glob

dfs = pd.concat([pd.read_csv(f, header=None) for f in glob.glob("./in_data/month*/day*")])
dfs.to_csv("./out_data/df_combined.csv", index=False)
0 голосов
/ 18 апреля 2020

Привет, квант и добро пожаловать на SO!

Вы можете использовать следующий код для этого:

import os
import glob
import pandas as pd

path = '/your_directory_containing the files'
os.chdir(path)

all_filenames = [i for i in glob.glob('*.{}'.format('csv'))]

combined_csv = pd.concat([pd.read_csv(f) for f in all_filenames ])
combined_csv.to_csv( "combined_csv.csv", index=False, encoding='utf-8-sig')

Обратите внимание, что этот код объединит все .csv -файлы в указанный каталог.

Я надеюсь, что код работает для вас:)

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