Pyarrow: TypeError: требуется целое число (получил тип str) - PullRequest
0 голосов
/ 07 февраля 2020

У меня есть фрейм данных со следующим dtype:

[2020-02-06 19:15:06,579] {logging_mixin.py:95} INFO - 
campanha                      object
chave_sistema_origem           int64
valor_ajustado                object

У столбца valor_ajustado есть какое-то значение, которое вызывает у меня исключение, когда я пытаюсь написать файл паркета, используя df.to_parquet(buffer, index=False)

[2020-02-06 19:15:06,597] {taskinstance.py:1047} ERROR - an integer is required (got type str)
...
  File "/Users/jackhammer/.virtualenvs/python373/lib/python3.7/site-packages/pyarrow/pandas_compat.py", line 540, in convert_column
    result = pa.array(col, type=type_, from_pandas=True, safe=safe)
  File "pyarrow/array.pxi", line 207, in pyarrow.lib.array
  File "pyarrow/array.pxi", line 78, in pyarrow.lib._ndarray_to_array

Я знаю, что столбец valor_ajustado имеет такие значения, как:

0

123,48

1

493,987

Кто-нибудь знает, почему он пытается манипулировать целыми числами вместо сохранения столбца как объекта?

1 Ответ

0 голосов
/ 07 февраля 2020

Нет типа данных в Apache Стрелка для хранения Python объектов, поэтому необходимо выводить поддерживаемый сильный тип данных (это также верно для файлов Parquet). Я бы очистил столбец valor_adjustado, чтобы убедиться, что все значения имеют цифры c (в нем должна быть строка или другое неверное значение).

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