Получите данные из Postgres в Flask и преобразуйте их в панду - PullRequest
0 голосов
/ 10 ноября 2018

У меня есть приложение Flask, которое работает с CSV. Я поместил csv как новую таблицу в postgres, но у меня возникают проблемы с изменением подключения к данным без разрыва приложения.

В настоящее время csv читается в объекте класса. В этом объекте я фильтрую данные, создаю справочную таблицу и запускаю алгоритм машинного обучения (для простоты не показан). Я закомментировал код, в котором я пытался получить данные из таблицы покупок в my_db в postgres. В данных postgres, в конечном итоге, будет фрейм данных pandas.

class Recommender(object):

    def __init__(self):

        # df = pd.read_sql_query('select * from "purchases"',con=engine)
        # self.df = df
        df = pd.read_csv('data/20171027.csv', encoding='ISO-8859-1')
        df.date_commande_client = pd.to_datetime(df['date_commande_client'],
                                                 format='%m/%d/%y')


        df = filter_by_order_count(df) #more stuff after this


        return df 

Я пытался читать те же данные из postgres, но это не работает. Разве я не должен читать это внутри объекта класса?

Для справки я попытался добавить этот импорт и создать движок:

from flask_sqlalchemy import SQLAlchemy
from sqlalchemy import create_engine
engine = create_engine('postgresql://user:passowrd@localhost/my_db')

app = Flask(__name__)
app.config['SECRET_KEY'] = '1234'

1 Ответ

0 голосов
/ 29 ноября 2018

на всякий случай, если это помогает: моя проблема заключалась в том, что имена столбцов в db postgres, которые я создал, были свернуты в нижний регистр, а мой код имел некоторые в верхнем регистре. Как только я изменил некоторые имена столбцов, это сработало. См. В именах столбцов PostgreSQL учитывается регистр?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...