class TopicChange: def __init__(self, dataFile, userJoins, activeForums): sys.stderr.write("Started\n") self.dataHandler = DataHandler(dataFile, userJoins) self.dataHandler.loadActiveForums(activeForums) sys.stderr.write("Data loaded\n") self.post2Month = self.dataHandler.getPost2Month() self.doc2Post = self.dataHandler.getDoc2Post() self.post2User = self.dataHandler.getPost2User() sys.stderr.write("Got the dicts\n") def loadInferredTopics(self, topicsOutput): userMonth = dd(lambda: dd(int)) numUsers = set() csvReader = csv.reader(open(topicsOutput)) for doc in csvReader: # if len(doc)<21: # continue # print 'phani' docId = doc[0] # topic5Num = doc[5] # topic19Num = doc[19] userId = self.post2User[self.doc2Post[docId]] # month = self.post2Month[self.doc2Post[docId]] # userMonth[userId][month] += topic5Num numUsers.add(userId) # for user in userMonth.iterkeys(): # for month in userMonth[user].iterkeys(): # print user, month, userMonth[user][month] print len(numUsers)