Data Science

Эффективная загрузка и объединение нескольких CSV-файлов с помощью Pandas

Spread the love

В этом руководстве показано, как эффективно импортировать несколько CSV-файлов в Pandas DataFrame в Python. Мы рассмотрим основы Pandas, чтение отдельных CSV-файлов, импорт нескольких файлов и, наконец, объединение их в один объединенный DataFrame.

Оглавление

  1. Что такое Pandas?
  2. Чтение одного CSV-файла
  3. Чтение нескольких CSV-файлов
  4. Объединение DataFrame
  5. Обработка потенциальных ошибок

1. Что такое Pandas?

Pandas — это базовая библиотека в экосистеме анализа данных Python. Она предоставляет высокопроизводительные, простые в использовании структуры данных и инструменты для анализа данных. Основная структура данных — это DataFrame, двумерная именованная структура данных, похожая на электронную таблицу или таблицу SQL. Pandas упрощает работу со структурированными данными из различных источников, включая CSV-файлы, электронные таблицы Excel и базы данных.

2. Чтение одного CSV-файла

Прежде чем работать с несколькими файлами, давайте прочитаем один CSV-файл:


import pandas as pd

file_path = 'your_file.csv'  # Замените на путь к вашему файлу
df = pd.read_csv(file_path)
print(df.head())

Это импортирует Pandas, указывает путь к файлу, считывает CSV с помощью pd.read_csv() и отображает первые пять строк с помощью df.head().

3. Чтение нескольких CSV-файлов

Для чтения нескольких CSV-файлов из каталога мы используем модуль glob:


import pandas as pd
import glob

directory = 'path/to/your/csv/files/'  # Замените на путь к вашей директории
csv_files = glob.glob(directory + '*.csv')
dfs = []

for file in csv_files:
    try:
        df = pd.read_csv(file)
        dfs.append(df)
    except pd.errors.EmptyDataError:
        print(f"Предупреждение: Пропуск пустого файла: {file}")
    except pd.errors.ParserError:
        print(f"Предупреждение: Пропуск файла с ошибками парсинга: {file}")

print(f"Количество прочитанных DataFrame: {len(dfs)}")

Этот код находит все CSV-файлы в указанном каталоге, считывает каждый из них в DataFrame и добавляет его в список. Блок try-except обрабатывает потенциальные ошибки, такие как пустые файлы или ошибки парсинга, предотвращая сбой скрипта.

4. Объединение DataFrame

Наконец, мы объединяем отдельные DataFrame:


combined_df = pd.concat(dfs, ignore_index=True)
print(combined_df.head())
combined_df.to_csv('combined_data.csv', index=False) #Необязательно: Сохранение в новый CSV

pd.concat(dfs, ignore_index=True) объединяет все DataFrame в списке dfs. ignore_index=True сбрасывает индекс для чистого, непрерывного индекса. Необязательная функция to_csv() сохраняет результат.

5. Обработка потенциальных ошибок

Надежные скрипты предвидят проблемы. Добавление обработки ошибок, как показано в разделе чтения нескольких файлов, имеет решающее значение. Рассмотрите возможность добавления проверок на существование каталога и обработки различных типов ошибок чтения файлов (например, неправильные разделители, отсутствующие столбцы). Это гарантирует, что ваш скрипт будет более надежным и менее подверженным неожиданным сбоям.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *