[英]how to add pandas Timestamp to sqlite3?
我通过Django将DateTimeField定义为:
class test(models.Model):
t = models.DateTimeField()
在熊猫中,我有一个数据框
a=DataFrame(date_range('2014-1-1','2014-1-2'))
type(a.ix[0,0])
其中显示:pandas.tslib.Timestamp
当我尝试通过以下方式插入数据时:
stmt="insert into dry_powder_test('t') values(?)"
cnx = sqlite3.connect(db_path)
cnx.executemany(stmt, a.to_records(index=False).tolist())
cnx.commit()
没有错误。 但
test.objects.get(pk=1).t
给我空洞的结果。 虽然在数据库中我实际上看到了
(u'project_test', 't', 1388534400000000000L)
我应该如何正确地做到这一点?
django模型具有一个字段t,其类型为django.model.DateTimeField,并将您保存到数据库pandas.data_range,该数据库从1970年隐式转换为毫秒。
---编辑---再见
我已经解决了你的问题。 我已经使用Django orm创建有效的模型,所以:
[1]: a1 = test()
[2]: a1.t
[3]: a1.t = datetime.datetime(2012, 2, 26, 13, 0, 0, 775217)
然后我检查了数据库:
$./manage.py dbshell
sqlite> select * from polls_test;
1|1388534400000000000
2|1388620800000000000
3|2012-02-26 13:00:00.775217
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.