def computeAverageRatings(self): """Compute average rating for each user""" self.userAvgRatings = {} for user in self.data: total = 0 n = len(self.data) for value in self.data[user].values(): total += value self.userAvgRatings[user] = total / n def flip(self): """flip self.data so {user: {band: rating} ... becomes {band: {user: rating} ... results will be in self.flippedData """ self.flippedData = {} for (user, ratings) in self.data.items(): for (band, rating) in ratings.items(): if band in self.flippedData: bandratings = self.flippedData[band] else: bandratings = {} bandratings[user] = rating self.flippedData[band] = bandratings