Проблемы с вставкой pandas dataframe в базу данных MySQL. Перечислил примеры данных и использованный код вместе с ошибками, которые следуют.Как вставить данные с pandas dataframe в mysql?
Используемые пакеты
Pandas - 0.22.0
sqlalchemy - 1.2.1
Используемый кадр данных:
Out[135]:
P_ID S_ID Action Timestamp \
0 Harold 1 Extensions 2017-11-07 03:17:27.342295+00:00
1 Harold 1 Extensions 2017-11-07 03:17:27.447234+00:00
2 Harold 1 Extensions 2017-11-07 03:17:27.552406+00:00
3 Harold 1 Extensions 2017-11-07 03:17:27.657676+00:00
4 Harold 1 Extensions 2017-11-07 03:17:27.762737+00:00
Value
0 -0.096083
1 -0.003894
2 -0.004779
3 0.131210
4 0.161990
dtypes:
P_ID object
S_ID int64
Action object
Timestamp datetime64[ns, UTC]
Value float64
dtype: object
Следующие фрагменты кода были использованы с последующими ошибками
Также pd.to_datetime (), похоже, не оказал никакого влияния.
Используемый код (1) без индекса
engine = create_engine('mysql+pymysql://xxxx:3306/xxxx')
test.to_sql(name='table1', con=engine, if_exists = 'append',index=False)
conn.close()
Ошибка:
ValueError: Невозможно привести DatetimeIndexto dtype datetime64 [us]
Используемый код (2) с индексированным столбцом отметки времени
engine = create_engine('mysql+pymysql://xxxx:3306/xxxx')
test.to_sql(name='table1', con=engine, if_exists = 'append',index=True,
index_label='Timestamp',
dtype={'Timestamp':typeTIMESTAMP(timezone=True)})
conn.close()
Ошибка:
ValueError: повторяющееся имя в индексе / столбцах: невозможно вставить метку времени, уже существует