Как написать DataFrame в таблицу postgres?

Существует метод DataFrame.to_sql , но он работает только для баз данных mysql, sqlite и oracle. Я не могу перейти к этому методу postgres connection или sqlalchemy engine.

One Solution collect form web for “Как написать DataFrame в таблицу postgres?”

Начиная с pandas 0.14 (выпущенный в конце мая 2014 года) поддерживается postgresql. Модуль sql теперь использует sqlalchemy для поддержки различных вариантов базы данных. Вы можете передать движок sqlalchemy для базы данных postgresql (см. Документы ). Например:

 from sqlalchemy import create_engine engine = create_engine('postgresql://scott:tiger@localhost:5432/mydatabase') df.to_sql('table_name', engine) 

Вы правы, что в pandas до версии 0.13.1 postgresql не поддерживался. Если вам нужно использовать более старую версию панд, вот исправленная версия pandas.io.sql : https://gist.github.com/jorisvandenbossche/10841234 .
Я написал это некоторое время назад, поэтому не могу полностью гарантировать, что он всегда работает, но база должна быть там). Если вы поместите этот файл в свой рабочий каталог и импортируете его, тогда вы сможете это сделать (где con – соединение postgresql):

 import sql # the patched version (file is named sql.py) sql.write_frame(df, 'table_name', con, flavor='postgresql') 
  • Массовые сберегательные объекты SQLAlchemy
  • Сложное ограничение внешнего ключа в SQLAlchemy
  • SQLAlchemy ORM с динамической схемой таблиц
  • SQLAlchemy - копировать схему и данные подзапроса в другую базу данных
  • SqlAlchemy выберите с max, group_by и order_by
  • Диалог настройки SQLAlchemy Flask
  • SQLAlchemy с PostgresSQL и полнотекстовым поиском
  • Как получить список ответов на Python набора результатов SQLAlchemy?
  • Как выполнить необработанный запрос с возвратом в sqlalchemy
  • конвертировать выбранное время и дату в sqlalchemy
  • Flask-SQLAlchemy - как сеансы работают с несколькими базами данных?
  • Python - лучший язык программирования в мире.