PostgreSQL
 sql >> Database >  >> RDS >> PostgreSQL

Panda che scrivono dataframe su un altro schema postgresql

Aggiornamento:a partire da Pandas 0.15, è supportata la scrittura su schemi diversi. Quindi potrai utilizzare lo schema argomento della parola chiave:

df.to_sql('test', engine, schema='a_schema')

La scrittura su schemi diversi non è ancora supportata al momento con read_sql e to_sql funzioni (ma è già stata presentata una richiesta di miglioramento:https://github.com/pydata/pandas/issues/7441).

Tuttavia, per ora puoi spostarti usando l'interfaccia degli oggetti con PandasSQLAlchemy e fornendo un MetaData personalizzato oggetto:

meta = sqlalchemy.MetaData(engine, schema='a_schema')
meta.reflect()
pdsql = pd.io.sql.PandasSQLAlchemy(engine, meta=meta)
pdsql.to_sql(df, 'test')

Attenzione! Questa interfaccia (PandasSQLAlchemy ) non è ancora realmente pubblico e subirà comunque delle modifiche nella prossima versione di panda, ma è così che puoi farlo per panda 0.14.

Aggiorna :PandasSQLAlchemy viene rinominato in SQLDatabase nei panda 0.15.