Java Code Examples for org.carrot2.core.Cluster#getDocuments()
The following examples show how to use
org.carrot2.core.Cluster#getDocuments() .
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: CommitsMessageTopicsTransMetricProvider.java From scava with Eclipse Public License 2.0 | 6 votes |
private void storeCommitsMessagesTopics(List<Cluster> commitsMessagesTopics, VcsRepositoryDelta vcsRepositoryDelta, CommitsMessageTopicsTransMetric db) { db.getCommitsTopics().getDbCollection().drop(); for (Cluster cluster : commitsMessagesTopics) { CommitsTopic commitsTopic = new CommitsTopic(); db.getCommitsTopics().add(commitsTopic); commitsTopic.setRepository(vcsRepositoryDelta.getRepository().getUrl()); commitsTopic.getLabels().addAll(cluster.getPhrases()); commitsTopic.setNumberOfMessages(cluster.getAllDocuments().size()); for(Document document : cluster.getDocuments()) { String[] uid = document.getStringId().split("\t"); commitsTopic.getCommitsMessageId().add(uid[1]); } } db.sync(); }
Example 2
Source File: ConsoleFormatter.java From scava with Eclipse Public License 2.0 | 5 votes |
private static void displayCluster(final int level, String tag, Cluster cluster, int maxNumberOfDocumentsToShow, ClusterDetailsFormatter clusterDetailsFormatter) { final String label = cluster.getLabel(); // indent up to level and display this cluster's description phrase for (int i = 0; i < level; i++) { System.out.print(" "); } System.out.println(label + " " + clusterDetailsFormatter.formatClusterDetails(cluster)); // if this cluster has documents, display three topmost documents. int documentsShown = 0; for (final Document document : cluster.getDocuments()) { if (documentsShown >= maxNumberOfDocumentsToShow) { break; } displayDocument(level + 1, document); documentsShown++; } if (maxNumberOfDocumentsToShow > 0 && (cluster.getDocuments().size() > documentsShown)) { System.out.println(getIndent(level + 1) + "... and " + (cluster.getDocuments().size() - documentsShown) + " more\n"); } // finally, if this cluster has subclusters, descend into recursion. final int num = 1; for (final Cluster subcluster : cluster.getSubclusters()) { displayCluster(level + 1, tag + "." + num, subcluster, maxNumberOfDocumentsToShow, clusterDetailsFormatter); } }
Example 3
Source File: CustomConsoleFormatter.java From scava with Eclipse Public License 2.0 | 5 votes |
private static void displayCluster(final int level, String tag, Cluster cluster, int maxNumberOfDocumentsToShow, ClusterDetailsFormatter clusterDetailsFormatter) { final String label = cluster.getLabel(); // indent up to level and display this cluster's description phrase for (int i = 0; i < level; i++) { System.out.print(" "); } System.out.println(label + " " + clusterDetailsFormatter.formatClusterDetails(cluster)); // if this cluster has documents, display three topmost documents. int documentsShown = 0; for (final Document document : cluster.getDocuments()) { if (documentsShown >= maxNumberOfDocumentsToShow) { break; } displayDocument(level + 1, document); documentsShown++; } if (maxNumberOfDocumentsToShow > 0 && (cluster.getDocuments().size() > documentsShown)) { System.out.println(getIndent(level + 1) + "... and " + (cluster.getDocuments().size() - documentsShown) + " more\n"); } // finally, if this cluster has subclusters, descend into recursion. final int num = 1; for (final Cluster subcluster : cluster.getSubclusters()) { displayCluster(level + 1, tag + "." + num, subcluster, maxNumberOfDocumentsToShow, clusterDetailsFormatter); } }
Example 4
Source File: ConsoleFormatter.java From DistributedCrawler with Apache License 2.0 | 5 votes |
/** * 对一个类进行展示. * @author GS * @param level * @param tag * @param cluster * @param maxNumberOfDocumentsToShow * @param clusterDetailsFormatter */ private static void displayCluster(final int level, String tag, Cluster cluster, int maxNumberOfDocumentsToShow, ClusterDetailsFormatter clusterDetailsFormatter) { final String label = cluster.getLabel();//当前类的标题 // indent up to level and display this cluster's description phrase for (int i = 0; i < level; i++) { System.out.print(" "); } System.out.println(label + " " + clusterDetailsFormatter.formatClusterDetails(cluster)); // if this cluster has documents, display three topmost documents. int documentsShown = 0; for (final Document document : cluster.getDocuments()) { if (documentsShown >= maxNumberOfDocumentsToShow)//如果达到最大展示数的话不再展示 { break; } displayDocument(level + 1, document);//这个level是干嘛的? documentsShown++;//当前分类已经展示的文档数 } if (maxNumberOfDocumentsToShow > 0 && (cluster.getDocuments().size() > documentsShown)) { System.out.println(getIndent(level + 1) + "... and " + (cluster.getDocuments().size() - documentsShown) + " more\n"); } // finally, if this cluster has subclusters, descend into recursion. final int num = 1; for (final Cluster subcluster : cluster.getSubclusters()) { displayCluster(level + 1, tag + "." + num, subcluster, maxNumberOfDocumentsToShow, clusterDetailsFormatter); } }
Example 5
Source File: CarrotClusteringEngine.java From lucene-solr with Apache License 2.0 | 4 votes |
private void clustersToNamedList(List<Cluster> outputClusters, List<NamedList<Object>> parent, boolean outputSubClusters, int maxLabels) { for (Cluster outCluster : outputClusters) { NamedList<Object> cluster = new SimpleOrderedMap<>(); parent.add(cluster); // Add labels List<String> labels = outCluster.getPhrases(); if (labels.size() > maxLabels) { labels = labels.subList(0, maxLabels); } cluster.add("labels", labels); // Add cluster score final Double score = outCluster.getScore(); if (score != null) { cluster.add("score", score); } // Add other topics marker if (outCluster.isOtherTopics()) { cluster.add("other-topics", outCluster.isOtherTopics()); } // Add documents List<Document> docs = outputSubClusters ? outCluster.getDocuments() : outCluster.getAllDocuments(); List<Object> docList = new ArrayList<>(); cluster.add("docs", docList); for (Document doc : docs) { docList.add(doc.getField(SOLR_DOCUMENT_ID)); } // Add subclusters if (outputSubClusters && !outCluster.getSubclusters().isEmpty()) { List<NamedList<Object>> subclusters = new ArrayList<>(); cluster.add("clusters", subclusters); clustersToNamedList(outCluster.getSubclusters(), subclusters, outputSubClusters, maxLabels); } } }