экспортируйте двоичные данные из таблицы postgres в csv и затем прочитайте csv, чтобы создать фрейм данных с помощью команды copy - PullRequest
0 голосов
/ 13 апреля 2020

Я хочу экспортировать данные модели (в байтовом формате, хранящемся в базе данных psql) в CSV, а затем создать кадр данных, используя pandas.

Мой код, который я пробовал:

query = ("""SELECT  model from {} where col1 = '{}' and col2 = '{}'""").format(
        os.environ['table'], os.environ['col2'], hier)

    with tempfile.TemporaryFile() as tmpFile:
        copy_sql = "COPY ({query}) TO STDOUT WITH CSV {head}".format(
            query=query, head="HEADER"
        )
        conn = engine.raw_connection()
        cur = conn.cursor()
        cur.copy_expert(copy_sql, tmpFile)
        tmpFile.seek(0)
        dataFrame = pd.read_csv(tmpFile)

Это dataFrame ['model'] предоставляет данные в виде строки, а не байтового формата объекта.

Обновление : Использование команды pd.read_ sql;

dataFrame = pd.read_sql(query, con=engine, columns=['col1', 'model'])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...