【发布时间】:2018-01-05 20:03:46
【问题描述】:
我正在使用pandas (0.20.3) 和python 3.5.3
我有这样的错误
mysql.connector.errors.ProgrammingError: 1054 (42S22): Unknown column 'nan' in 'field list'
我认为是因为 mysql 不理解 'nan' 作为 mull。
据此article
问题已在 pandas 0.15.0 中修复
但是我仍然有这个错误。我的线有问题吗??
或者我应该在哪里解决??
stocksDf = pd.read_csv('companys.csv', names=['name','place'])
for i,row in stocksDf.iterrows():
sql = "insert into CompanyUs(name,place) VALUES(%s,%s)"
data = (row['name'],row['place'])
cur.execute(sql,data)
pprint("Company Write : %s" % row['name'])
conn.commit()
【问题讨论】:
-
你使用的不是
pandas中的to_sql,而是其他MYSQL API中的execute,所以与参考文章的情况不一样,与@987654329的版本无关@。stocksDf = stocksDf.astype(object).where(pd.notnull(stocksDf), None)可能会有所帮助。 -
@Huang 好答案!
-
@Huang 非常感谢!它对我有用!