2017-04-26 132 views
1

我有一个sqlite3数据库表,我想在熊猫中分析。数据库表示一个时间序列,所以我想用我的DataFrame来反映这一点。具体来说,我想能够使用日期作为我的DataFrame中的索引,以便我可以做很多漂亮的事情,如resampling从熊猫读取时间序列与熊猫

现在,我在读数据帧为:

db = sqlite3.connect('data.db') 
query = """ 
    SELECT 
    * 
    FROM DataTable 
""" 
data = pd.read_sql_query(query, db, parse_dates={'datetime': '%Y-%m-%d %H:%M:%S'}) 

该数据帧是使用索引顺序整数,而不是时间戳,因为我想。是否有一些神奇的咒语在解析的datetime字段上创建日期索引,而不是使用顺序整数?

+0

你能不能只是做一个'data.set_index(“日期时间”,就地= TRUE)'? – JCVanHamme

+0

@JCVanHamme - 可能。我仍在想出如何围绕熊猫包裹我的头。这对我来说都是一个新的实验:-) – mgilson

回答

1

事实证明,这可以通过使用关键字index_col很容易地完成:

data = pd.read_sql_query(
    query, 
    db, 
    parse_dates={'datetime': '%Y-%m-%d %H:%M:%S'}, 
    index_col='datetime')