【问题标题】:format pandas.Timestamp for SQLite query为 SQLite 查询格式化 pandas.Timestamp
【发布时间】:2014-06-26 17:41:46
【问题描述】:
from pandas.io import sql
import sqlalchemy

eng = sqlalchemy.create_engine('sqlite:////path/to/file.db')

In [20]: sql.execute("select * from mytable", eng).fetchone()
Out[20]: (0, u'2013-03-13 13:05:00.000000', 1, 0, 0, 0)

现在我应该怎么做才能让它工作:

target = Timestamp('2014-04-30')
sql.execute("select * from mytable where date = ?", eng, params=target).\
            fetchone()

【问题讨论】:

    标签: sql sqlite pandas timestamp


    【解决方案1】:
    str_format = '%Y-%m-%d %H:%M:%s'
    target = Timestamp('2014-04-30').strftime(str_format)
    

    【讨论】:

      【解决方案2】:

      答案有错别字,最后一个 %s(小写)应该是 %S(大写)

      >>> str_format = '%Y-%m-%d %H:%M:%s'
      >>> target = pd.Timestamp('2014-04-30').strftime(str_format)
      >>> target
      '2014-04-30 00:00:1398808800'  
      
      >>> str_format = '%Y-%m-%d %H:%M:%S'
      >>> target = pd.Timestamp('2014-04-30').strftime(str_format)
      >>> target
      '2014-04-30 00:00:00'
      

      【讨论】:

        猜你喜欢
        • 2014-03-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多