pymongo根据日期索引获取的数据为空,这个问题今天下午困扰了我快一个多钟头,最后的结果,毫无疑问又是一个比较低级的错误 数据库里的数据都在啊,时间段也没问题,为啥就是没数据呢,很有可能你就是犯了我犯得错误,传入的日期只是一个string,并没有使用 datetime.strptime(startDate, '%Y%m%d')进行修改,改过之后,就能够拿到数据了。~~~如下所示
def trainSklearnModel(model,func,dbName,symbol,startDate, endDate): """载入历史数据""" startDate = datetime.strptime(startDate, '%Y%m%d') endDate = datetime.strptime(endDate, '%Y%m%d') dbClient = pymongo.MongoClient(globalSetting['mongoHost'], globalSetting['mongoPort']) collection = dbClient[dbName][symbol] flt = {'datetime': {'$gte': startDate, '$lt': endDate}} trainCursor = collection.find(flt).sort('datetime') trainData=[] for d in trainCursor: data = VtBarData() data.__init__ = d trainData.append(data) count = len(trainCursor)
如下所示: