Загрузка и экспорт данных в Pandas: CSV, Excel, JSON, SQL

Мы просто и по делу рассказываем про ИИ-инструменты для работы: сравнения, пошаговые гайды, бесплатные альтернативы и реальные сценарии применения. Помогаем выбрать между ChatGPT, Gemini, Claude, локальными моделями и десятками узкоспециализированных сервисов — от дизайна и HR до аналитики и SEO. Меньше хайпа, больше практики и экономии времени каждый день.

pandascsvexcel

Pandas — один из главных инструментов аналитика и Python-разработчика для работы с табличными данными. Чаще всего в реальных задачах данные нужно не только обработать, но и корректно загрузить из внешнего источника или выгрузить в нужный формат. Разберём базовые сценарии: CSV, Excel, JSON и SQL.

CSV: самый популярный формат

Для чтения используется pd.read_csv():

import pandas as pd
df = pd.read_csv("data.csv")

Полезные параметры:

  • sep=";" — если разделитель не запятая
  • encoding="utf-8" или cp1251 — если проблемы с кириллицей
  • usecols=[...] — загрузить только нужные столбцы
  • parse_dates=[...] — сразу преобразовать даты

Экспорт:

df.to_csv("result.csv", index=False)

index=False убирает служебный индекс из файла — это частая практика.

Excel: удобно для бизнеса и отчётов

Чтение Excel-файлов:

df = pd.read_excel("report.xlsx", sheet_name="Лист1")

Можно читать конкретный лист, несколько листов или весь файл. Для записи:

df.to_excel("result.xlsx", index=False)

Если нужно сохранить несколько таблиц на разные листы:

with pd.ExcelWriter("result.xlsx") as writer:
    df.to_excel(writer, sheet_name="Данные", index=False)

Важно: для работы с Excel могут понадобиться движки вроде openpyxl.

JSON: для API и веб-сервисов

Чтение JSON:

df = pd.read_json("data.json")

Если структура вложенная, часто требуется дополнительная нормализация через json_normalize. Экспорт:

df.to_json("result.json", orient="records", force_ascii=False)

orient="records" удобен для API, а force_ascii=False сохраняет читаемую кириллицу.

SQL: загрузка из баз данных

Pandas умеет работать с SQL через read_sql():

import sqlite3
conn = sqlite3.connect("database.db")
df = pd.read_sql("SELECT * FROM users", conn)

Запись в таблицу:

df.to_sql("users_copy", conn, if_exists="replace", index=False)

Полезные режимы:

  • if_exists="fail" — ошибка, если таблица есть
  • replace — перезаписать
  • append — добавить данные

Для PostgreSQL, MySQL и других СУБД обычно используют sqlalchemy.

Практические советы ⚙️

  • Проверяйте типы данных после загрузки: df.info()
  • Ограничивайте объём данных при чтении больших файлов: nrows=1000
  • Явно задавайте кодировку и разделители
  • Для Excel и JSON тестируйте структуру до массовой обработки
  • При экспорте в SQL следите за типами столбцов и дубликатами

Что важно запомнить 💡

Pandas закрывает почти все типовые задачи обмена данными между файлами, API и базами. Если знать ключевые методы — read_csv, read_excel, read_json, read_sql, а также to_csv, to_excel, to_json, to_sql — можно быстро строить ETL-пайплайны, отчёты и аналитические процессы.

📎 В конце стоит заглянуть в подборку каналов про IT — там много полезного по Python, аналитике, data engineering и автоматизации.

🗣 Подборки каналов
🧠 Каталог ботов и приложений
🗺 Навигация

Читайте так же