Python Bigrquery无法强制整数
我最近开始在R中使用“bigrquery”包从Google Bigquery获取一些数据,但是我收到的数据帧中的大多数整数列都有NAs 谷歌自己的BigQuery仪表板中的相同SQL查询返回有效结果。我也在python中进行了尝试,同样的查询也会返回有效的结果,因此它实际上是特定于R的(这不是授权问题) 在R中调用Python Bigrquery无法强制整数,python,r,google-bigquery,Python,R,Google Bigquery,我最近开始在R中使用“bigrquery”包从Google Bigquery获取一些数据,但是我收到的数据帧中的大多数整数列都有NAs 谷歌自己的BigQuery仪表板中的相同SQL查询返回有效结果。我也在python中进行了尝试,同样的查询也会返回有效的结果,因此它实际上是特定于R的(这不是授权问题) 在R中调用query\u exec(query,project=projectd)时收到的信息: 我在Google BigQuery或调用Python中的pd.io.gbq.read\u gb
query\u exec(query,project=projectd)
时收到的信息:
我在Google BigQuery或调用Python中的pd.io.gbq.read\u gbq(query,projectd)
中收到的内容:
原因可能是什么
我收到的这些NAs的错误消息是:
强制到整数范围引入的NAs
我对R或“bigrquery”不太熟悉,但听起来您的整数值被强制为32位整数,超出了范围(bigrquery整数是64位的) 解决方法:如果您只想将数字视为不透明的ID,可以将其转换为查询中的字符串吗 我不清楚为什么同样的事情会发生在您的布尔列上,但也许您应该检查类型是否等效(可能是整数还是布尔),因为它们似乎适用于下一列 可能相关:
是的,R整数是32位的,因此较大的值不能表示为整数,应该在SQL中转换为字符串。是的,当我将SQL字段转换为字符串时,一切正常!非常感谢你!结果是我错误地复制了布尔列,那里的值实际上是NA。