我有一个关于Flask 化学的问题.我知道下面的flaskSQLALSCHEMY查询代码是有效的,因为我能够用‘eintest’变量填充html表中另一个页面上的数据.

ticker = 'msft'
eintest = db.session.query(company).filter(company.instance==ticker)

我所要做的就是将上面的flASK-SQLALSCHEMY代码转换成Pandas 数据框,就像我在下面try 做的那样.

df = pd.read_sql(eintest.statement, db.session.bind)

当我运行我的FASK应用程序时,我收到错误消息,"AttributeError:‘NoneType’对象没有属性‘Cursor’".有人知道这是为什么吗?我已经try 了这一行的许多变体,以将SQL读入到Pandas 数据帧中,但还没有成功.

推荐答案

支持大Pandas read_sql的理由是sql statement and a connection分.你正在传递一份声明和一份session.以下是你需要做出的改变,才能让它发挥作用:

# Load to a pandas dataframe
df = pd.read_sql(eintest.statement, db.get_engine())

Python相关问答推荐

Odoo 14 hr. emergency.public内的二进制字段

当多个值具有相同模式时返回空

在Python中处理大量CSV文件中的数据

使可滚动框架在tkinter环境中看起来自然

如何让Flask 中的请求标签发挥作用

如何使用数组的最小条目拆分数组

如何将Docker内部运行的mariadb与主机上Docker外部运行的Python脚本连接起来

对象的`__call__`方法的setattr在Python中不起作用'

NumPy中条件嵌套for循环的向量化

名为__main__. py的Python模块在导入时不运行'

在两极中过滤

dask无groupby(ddf. agg([min,max])?''''

如何使用正则表达式修改toml文件中指定字段中的参数值

什么是一种快速而优雅的方式来转换一个包含一串重复的列,而不对同一个值多次运行转换,

如何将泛型类类型与函数返回类型结合使用?

在Django中重命名我的表后,旧表中的项目不会被移动或删除

为什么后跟inplace方法的`.rename(Columns={';b';:';b';},Copy=False)`没有更新原始数据帧?

将相应的值从第2列合并到第1列(Pandas )

如果列包含空值,则PANAS查询不起作用

Python:使用asyncio.StreamReader.readline()读取长行