首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Bigquery将SQLAlchemy ORM转换为Pandas DataFrame

使用Bigquery将SQLAlchemy ORM转换为Pandas DataFrame
EN

Stack Overflow用户
提问于 2020-04-16 23:22:38
回答 1查看 1.5K关注 0票数 0

描述了如何从this question中使用pandas.read_sql函数直接在pandas DataFrame中获取查询结果的过程。

我想要的是能够在使用SQLAlchemy和pybigquery时做完全相同的事情

首先,我这样定义我的会话:

代码语言:javascript
复制
from sqlalchemy import
from sqlalchemy.orm import scoped_session, sessionmaker

db_uri = "bigquery://myproject/"
engine = create_engine(db_uri)
session = scoped_session(sessionmaker(bind=engine))

从那里我可以从我的ORM的Item请求

代码语言:javascript
复制
session.query(Item).first()
<Item...>

如果我必须通过pandas.read_sql调用一个经典的SQL数据库,我只需要做:

代码语言:javascript
复制
query = session.query(...)
df = pandas.read_sql(query.statement, session.query.bind)

我天真地试着

代码语言:javascript
复制
pandas.read_bgq(query.statement)

但这将返回TypeError: Object of type 'Select' is not JSON serializable

有没有一种方法可以像传统SQL数据库一样直接将bigquery请求到pandas数据帧中?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-20 18:12:55

来自@TimSwast的评论:

pandas.read_sql中使用常规查询语句实际上是有效的!所以这看起来像这样:

代码语言:javascript
复制
query = session.query(...)
df = pandas.read_sql(query.statement, session.query.bind)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61253952

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档