Как преобразовать тип int32 в int, поскольку он не поддерживает сериализацию в формате JSON - PullRequest
0 голосов
/ 06 июня 2019

У меня в настоящее время есть DataFrame pandas, который содержит информацию в этом формате:

      date  new builds  new houses  new homes  help to buy  
0   2014-06-08       5          29         79           11   
1   2014-06-15       5          30         79           11   
2   2014-06-22       6          31         82           12   
3   2014-06-29       5          31         82           12   
4   2014-07-06       5          33         86           12   
5   2014-07-13       5          33         88           13   
6   2014-07-20       5          33         87           12   
7   2014-07-27       5          33         86           13   
8   2014-08-03       5          32         86           13   
9   2014-08-10       6          31         83           12   
10  2014-08-17       5          30         86           11   

Я пытаюсь проанализировать эту информацию в Google Sheets через пакет gspread и использую функцию sheet.update_cell, но я продолжаюполучение ошибки

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

, и единственная ссылка на этот тип данных, который я могу найти, - это значения в кадре данных.

Я пробовал df['new builds'].astype(int), но это просто сохраняет данные в этом столбце как тип int32, и я также попытался сначала преобразовать их в строку, а затем набрать int с df['new builds'].astype(str).astype(int), но не повезло.

Просто для дальнейшего ознакомления, это код, который я пытаюсь использовать, чтобы поместить все данные из DataFrame в лист

number_of_columns = len(data.columns)
number_of_rows = data.shape[0]

for i in range(0, len(keyword_list)):
    column_loop = i + 1
    type(column_loop)
    for x in range(number_of_rows):
        row_loop = x + 1
        type(row_loop)
        sheet.update_cell(column_loop, row_loop, data.loc[x,keyword_list[i]])

1 Ответ

2 голосов
/ 06 июня 2019

Попробуйте int(data.loc[x, keyword_list[i]]) вместо data.loc[x, keyword_list[i]]


np.int32 не поддерживает сериализацию в формате JSON, но Python int - это просто преобразование np.int32 в python int.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...