def testIteratorFunc2(self): dataset = MendeleyGroupsDataset() trainIterator = dataset.getTrainIteratorFunc() testIterator = dataset.getTestIteratorFunc() for trainX in trainIterator: testX = testIterator.next() print(trainX.shape, trainX.nnz, testX.nnz) self.assertEquals(trainX.shape, testX.shape)
def testIteratorFunc3(self): #Check to see if repeated calls generate new matrices dataset = MendeleyGroupsDataset() trainIterator = dataset.getTrainIteratorFunc() X = next(trainIterator) X.data += 1 trainIterator = dataset.getTrainIteratorFunc() X2 = next(trainIterator) nptst.assert_array_almost_equal(X.data, X2.data+1)
def testBipartiteToUni(self): userInds = numpy.array([0, 1, 2, 0, 4]) itemInds = numpy.array([0, 0, 0, 1, 1]) dates = numpy.array([1, 2, 3, 4, 5]) dataset = MendeleyGroupsDataset() user1Inds, user2Inds, newDates = dataset.bipartiteToUni(userInds, itemInds, dates) X = scipy.sparse.csc_matrix((newDates, (user1Inds, user2Inds))) nptst.assert_array_equal(X[0, :].nonzero()[1], numpy.array([1, 2, 4])) nptst.assert_array_equal(X[1, :].nonzero()[1], numpy.array([0, 2])) nptst.assert_array_equal(X[2, :].nonzero()[1], numpy.array([0, 1])) nptst.assert_array_equal(X[3, :].nonzero()[1], numpy.array([])) nptst.assert_array_equal(X[4, :].nonzero()[1], numpy.array([0]))
def testIteratorFunc(self): iterStartTimeStamp = time.mktime(datetime(2009,01,25).timetuple()) dataset = MendeleyGroupsDataset(iterStartTimeStamp=iterStartTimeStamp) #iterator = dataset.getTrainIteratorFunc() trainIterator = dataset.getTrainIteratorFunc() testIterator = dataset.getTestIteratorFunc() trainX = trainIterator.next() testX = testIterator.next() self.assertEquals(trainX.shape, testX.shape) self.assertEquals(trainX.nnz + testX.nnz, dataset.numRatings) try: trainIterator.next() self.fail() except StopIteration: pass