我正在使用mysql服务器。
使用to_sql函数将数据插入mysql服务器时出错。
我的表格(数据框)
a b c d e f
0 465894 2017000002(01) 65.9807 93.3036 34 4
1 465894 2017000002(02) 075.5061A 104.3414 59 7
2 465894 2017000002(03) 075.8986B 106.0494 29 3
3 465894 2017000002(04) 084.9732 114.8906 34 4
>> table.dtypes
a int64
b object
c object
d float64
e int64
f int64
dtype: object
>> table.to_sql(
'table_name',
engine,
if_exists='append',
index=False
)
成功插入了列(a,b,d,e,f)。
但仅限于" c:"列错误
错误消息:numpy.float64'对象没有属性'翻译
我需要将列数据转换为数字并删除该字符。
但我想将其作为字符类型
插入
你怎么解决这个问题?
三江源〜
答案 0 :(得分:1)
看起来c
是一个混合dtypes列。我不认为mysql提供支持,所以你可以将整个事物转换为字符串,它应该工作:
df['c'] = df['c'].astype(str)