У меня есть паркетный файл с 4 колонками. Это выглядит примерно так:
+----+-----------+-------+--------+
|TYPE| ID| SRNO| AMT|
+--- +-----------+-------+--------+
|D | 123456| 1| 100.00|
|D | 123457| 2| 200.00|
|D | 123459| 3| 500.00|
|D | 123458| 4| 1000.00|
+----+-----------+-------+--------+
Схема для этого файла:
dataframe.printSchema
root
|-- TYPE: string (nullable = true)
|-- ID: integer (nullable = true)
|-- SRNO: integer (nullable = true)
|-- AMT: decimal(15,2) (nullable = true)
Когда я читаю этот файл в пандах, схема меняется на десятичную и представляется как объект
pandas_dataframe.dtypes
TYPE object
ID int32
SRNO int32
AMT object
Когда я пытаюсь получить данные из фрейма данных pandas, я получаю следующую ошибку:
ps.sqldf("select * from pandas_dataframe")
Traceback (последний вызов был последним): Файл "/ usr / local / lib64 /python3.6 / site-packages / sqlalchemy / engine / base.py ", строка 1229, в _execute_context курсор, оператор, параметры, контекстный файл" /usr/local/lib64/python3.6/site-packages/sqlalchemy/engine/default.py ", строка 577, в do_executemany cursor.executemany (оператор, параметры) sqlite3.InterfaceError: Ошибка привязки параметра 3 - возможно, неподдерживаемый тип.
Может кто-нибудь, пожалуйста, дайте мне знать, как обрабатывать такиесценарий, в котором мне нужно выбрать десятичное поле в кадре данных панд.