簡體   English   中英

將 dataframe 寫回 BQ 表

[英]Writing a dataframe back to BQ table

job_config = bigquery.LoadJobConfig()
# job_config.autodetect = True
# job_config.source_format = bigquery.SourceFormat.NEWLINE_DELIMITED_JSON

job_config = bigquery.LoadJobConfig(schema=[
    bigquery.SchemaField("Weekend", "INT64")

])
job_config.write_disposition = "WRITE_TRUNCATE"

job = client.load_table_from_dataframe(
    full_df_at, table_id, job_config=job_config
)

# Wait for the load job to complete.
job.result()
print('A table {} is created'.format(table_id))

此代碼導致以下錯誤。

TypeError                                 Traceback (most recent call last)
<ipython-input-39-c4a9bfab1edc> in <module>
      5 
      6 job_config = bigquery.LoadJobConfig(schema=[
----> 7     bigquery.SchemaField("Weekend", "INT64")
      8 
      9 ])

TypeError: __init__() got an unexpected keyword argument 'schema'

我該如何解決? 這段代碼運行良好。 這是因為 Pandas 升級的變化嗎? 如何使此代碼工作?

您可以嘗試:

job_config = bigquery.LoadJobConfig()
# job_config.autodetect = True
# job_config.source_format = bigquery.SourceFormat.NEWLINE_DELIMITED_JSON

job_config.schema = [
        bigquery.SchemaField("Weekend", "INT64")
   ]

job_config.write_disposition = "WRITE_TRUNCATE"

job = client.load_table_from_dataframe(
    full_df_at, table_id, job_config=job_config
)

# Wait for the load job to complete.
job.result()
print('A table {} is created'.format(table_id)) 

您可以查看Google BigQuery 的 Python 客戶端,您可以在其中找到如何使用 LoadJobConfig 的示例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM