def createLocationFile(regex): def getCheckinsForUser(user): return [[checkin['_id'], checkin['lid'], time.mktime(checkin['t'].timetuple())] for checkin in checkinsCollection.find({'u':user})] fileName = checkinSequenceLocationRegexFolder+regex for location in checkinSequenceLocationsCollection.find({'n':{'$regex':regex}}): userCheckins = {} print location['_id'], location['n'] users = set([edge[0]['u'] for type in [OUTGOING_EDGE, INCOMING_EDGE] for edge in location['e'][type]]) for user in users: if user not in userCheckins: userCheckins[str(user)] = getCheckinsForUser(user) location['users'] = userCheckins location['edges'] = location['e']; del location['e'] location['checkins'] = location['c']; del location['c'] location['lid'] = location['_id']; del location['_id'] location['name'] = location['n']; del location['n'] FileIO.writeToFileAsJson(location, fileName)
def locationsIterator(minNumberOfCheckins): for location in checkinSequenceLocationsCollection.find(): if len(location['c']) >= minNumberOfCheckins: yield location