List of usage examples for org.apache.mahout.cf.taste.model PreferenceArray clone
PreferenceArray clone();
From source file:com.mykidscart.mahout_service.RecommenderServlet.java
License:Apache License
private void writeDebugRecommendations(long userID, Iterable<RecommendedItem> items, PrintWriter writer) throws TasteException { DataModel dataModel = recommender.getDataModel(); writer.print("User:"); writer.println(userID);// w w w . j a v a 2 s.co m writer.print("Recommender: "); writer.println(recommender); writer.println(); writer.print("Top "); writer.print(NUM_TOP_PREFERENCES); writer.println(" Preferences:"); PreferenceArray rawPrefs = dataModel.getPreferencesFromUser(userID); int length = rawPrefs.length(); PreferenceArray sortedPrefs = rawPrefs.clone(); sortedPrefs.sortByValueReversed(); // Cap this at NUM_TOP_PREFERENCES just to be brief int max = Math.min(NUM_TOP_PREFERENCES, length); for (int i = 0; i < max; i++) { Preference pref = sortedPrefs.get(i); writer.print(pref.getValue()); writer.print('\t'); writer.println(pref.getItemID()); } writer.println(); writer.println("Recommendations:"); for (RecommendedItem recommendedItem : items) { writer.print(recommendedItem.getValue()); writer.print('\t'); writer.println(recommendedItem.getItemID()); } }