首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将bigquery中的所有列强制转换为float/string

将bigquery中的所有列强制转换为float/string
EN

Stack Overflow用户
提问于 2021-02-19 09:12:39
回答 1查看 951关注 0票数 0

我正在尝试使用python下载如下:从google.cloud导入的bigquery

代码语言:javascript
运行
复制
client = bigquery.Client()
SQL_QUERY = """
SELECT *
FROM TABLE
"""
df = client.query(SQL_QUERY).to_dataframe()

我在回溯中得到以下错误。看起来,google-cloud-sdk首先将表转换为JSON格式,然后转储到CSV。

代码语言:javascript
运行
复制
    converter = _CELLDATA_FROM_JSON[field.field_type]
KeyError: 'NUMERIC'

我有两个问题:

  1. 在使用Python下载这些列之前,是否有一种方法可以将所有列都强制转换为浮动/字符串?
  2. 如何识别哪些列造成了麻烦?
EN

回答 1

Stack Overflow用户

发布于 2021-02-19 16:26:40

如果您特别提到您的列名,您的查询就会变得更加可读性。

假设您的表有3列(abc)。如果要将它们转换为浮点数,只需将查询修改为:

代码语言:javascript
运行
复制
SQL_QUERY = """
  SELECT 
    cast(a as float64) as a, 
    cast(b as float64) as b, 
    cast(c as float64) as c
  FROM TABLE
"""
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66274687

复制
相关文章

相似问题

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