Объект типа date не является сериализуемой ошибкой JSON при загрузке фрейма данных в bigquery? - PullRequest
1 голос
/ 09 мая 2019

Я пытаюсь загрузить фрейм данных из python в biguquery. Я получаю следующую ошибку.

Объект типа date не поддерживает сериализацию в формате JSON

Ниже приведен пример кадра данных.

product_id  01/05/19    02/05/19    03/05/19
1             187668    191568      189098
2             331527    341754      340158
3             68904      65808      65484
4             32500      38012      36816
5             82677      92106       92148

1 Ответ

2 голосов
/ 09 мая 2019

Вам необходимо преобразовать метки столбцов в допустимое имя столбца :

Имена столбцов

Имя столбца должно содержать только буквы (a-z, A-Z), цифры (0-9) или подчеркивания (_), и оно должно начинаться с буквы или подчеркивания. Максимальная длина имени столбца составляет 128 символов.

Вы можете сделать это, используя аргумент table_schema to_gbq:

 df.to_gbq('db_name.table_name', 
           project_id='xyz', 
           if_exists='append', 
           verbose=False, 
           table_schema=[{'name': '_' + str(col).replace('-','_'), 'type': 'INT64'} 
                         for col in df.columns]
 )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...