作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 R 包“bigrquery”将数据从 R 数据帧上传到现有的 BigQuery 表中,如下所示:
mybq = bq_table(project='...', dataset='...', table=...)
bq_table_upload(x=mybq, values=..., create_disposition='CREATE_NEVER',
write_disposition='WRITE_APPEND')
但我是以下错误信息:
Error: Invalid schema update. Field NewID has changed type from STRING to INTEGER
BigQuery 似乎在自动检测数据格式,并错误地认为 NewID 列(其值如“00487”)是数字,而实际上它是一个字符串。当我将“x”字符附加到 NewID 值时,错误消失并且上传功能完美。使用“bigrquery”包上传数据时,有什么方法可以禁用自动检测吗?
最佳答案
同一个库中的bq_perform_load
函数应该是解决这个问题的方法。在此函数中,您可以使用参数 fields
指定架构,这样 Bigquery 将不会自动检测架构,如 here 所述。 .
我进行了测试,它对我有效。我创建了一个包含两列(STRING、STRING)的表,这是我的源数据:
0017 0015
0123 1234
1022 1202
我在 R 中运行以下命令以使其工作:
bq_perform_load('MY_PROJECT.MYDATASET.MYTABLE', "MY_GCS_OBJECT_LINK", nskip = 0, fields = list(bq_field("test1", "string"),bq_field("test2", "string")) , source_format = "CSV",create_disposition = "CREATE_NEVER", write_disposition = "WRITE_APPEND")
注意:我第一次尝试使用 fields = NULL
运行相同的命令但失败了。
关于R 到 BigQuery 数据上传错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51181966/
我有以下正则表达式 /[a-zA-Z0-9_-]/ 当字符串只包含从 a 到z 大小写、数字、_ 和 -。 我的代码有什么问题? 能否请您向我提供一个简短的解释和有关如何修复它的代码示例? //var
我是一名优秀的程序员,十分优秀!