R Bigquery错误:尝试应用非功能API数据无法解析

时间:2016-11-02 09:09:40

标签: r google-bigquery

我正在尝试使用R和BigQueryR进行简单的查询

https://github.com/cloudyr/bigQueryR

我不确定出了什么问题,但我一直收到错误(这可能只是因为我对R缺乏了解)。

它正确返回项目和数据集列表,因此我知道它已连接。

我按照查询指南进行了操作:

https://rdrr.io/cran/bigQueryR/man/bqr_query.html

bqr_query(projectId, datasetId, query, maxResults = 1000)

这是我输入的命令:

result <- bqr_query("bigqyerytestproject2", "TestDataSet1", "SELECT * FROM TestTable3", maxResults = 1000)

我收到错误:

Error : attempt to apply non-function
Warning message:
In q(the_body = body, path_arguments = list(projects = projectId)) :
  API Data failed to parse.  Returning parsed from JSON content.
                    Use this to test against your data_parse_function.

然后我检查了BigQuery并且查询成功完成:

我只是在移动大型数据集之前连接了一小部分,但结果是:

[
  {
    "Name": "Season",
    "Date": "2010-06-30",
    "ID": "1"
  },
  {
    "Name": "Test",
    "Date": "2010-06-30",
    "ID": "2"
  }
]

提前感谢您的帮助

2 个答案:

答案 0 :(得分:1)

根据您应用的需求,您可以考虑使用bigrquery而不是bigQueryR。区别在于here

除此之外,我建议向bigQueryR库的开发者提交一个问题。

答案 1 :(得分:0)

我将描述如何在遇到相同错误的情况下,如果它有用,但我认为这可能是一个稍微不同的问题,因为我的问题是由Google表格的权限错误造成的。

要创建错误,我可以:

  1. 创建Google表格电子表格
  2. 使用电子表格作为BigQuery表的来源
  3. 使用bqr_query()
  4. 查询BigQuery表
  5. 此时由于权限不足而会弹出错误
  6. 看到错误后,我授予了将Google表格编辑到我的应用程序的权限
  7. 错误&#34;错误:尝试应用非功能&#34;出现了,我无法摆脱它。
  8. 如果我在向我的应用授予权限后才查询该表,则该错误不会出现在第一位。所以我只需要重新创建Google Sheet和BigQuery表。

    希望这有帮助!