Вие сте ухапани от проблемите с (не)чувствителността към главни и малки букви с PostgreSQL. Ако цитирате името на таблицата в заявката, тя ще работи:
df = pd.read_sql_query('select * from "Stat_Table"',con=engine)
Но лично аз бих посъветвал винаги да използвате имена на таблици с малки букви (и имена на колони), също и когато пишете таблицата в базата данни, за да предотвратите подобни проблеми.
От документите на PostgreSQL (http:// www.postgresql.org/docs/8.0/static/sql-syntax.html#SQL-SYNTAX-IDENTIFIERS ):
За да обясня малко повече:написали сте таблица с името Stat_Table
към базата данни (и sqlalchemy ще цитира това име, така че ще бъде записано като "Stat_Table" в базата данни на postgres). Когато изпълнявате заявката 'select * from Stat_Table'
името на таблицата без кавички ще бъде преобразувано в малки букви stat_table
и така получавате съобщението, че тази таблица не е намерена.
Вижте също Имена на колони на PostgreSQL чувствителни ли са към малки и големи букви?