private static double computeNormalizedDocumentFrequency(final IndexReader indexReader, final Term term) throws IOException { int documentFrequency = indexReader.docFreq(term); return ((double) documentFrequency) / indexReader.numDocs(); }
@Override public final int docFreq(Term term) throws IOException { ensureOpen(); int total = 0; // sum freqs in subreaders for (int i = 0; i < subReaders.length; i++) { total += subReaders[i].docFreq(term); } return total; }
wordsMap.put(word, sourceReader.docFreq(new Term( fieldToAutocomplete, word)));
@Override public final Query rewrite(final IndexReader reader, final MultiTermQuery query) throws IOException { final B builder = getTopLevelBuilder(); final ParallelArraysTermCollector col = new ParallelArraysTermCollector(); collectTerms(reader, query, col); final int size = col.terms.size(); if (size > 0) { final int sort[] = col.terms.sort(); final float[] boost = col.array.boost; final TermContext[] termStates = col.array.termState; for (int i = 0; i < size; i++) { final int pos = sort[i]; final Term term = new Term(query.getField(), col.terms.get(pos, new BytesRef())); assert reader.docFreq(term) == termStates[pos].docFreq(); addClause(builder, term, termStates[pos].docFreq(), boost[pos], termStates[pos]); } } return build(builder); }
@Override protected Object createValue(IndexReader reader, Entry entryKey) throws IOException { Entry entry = entryKey; String field = entry.field; if (reader.maxDoc() == reader.docFreq(new Term(field))) { return DocIdSet.EMPTY_DOCIDSET; } OpenBitSet res = new OpenBitSet(reader.maxDoc()); TermDocs termDocs = reader.termDocs(); TermEnum termEnum = reader.terms (new Term (field)); try { do { Term term = termEnum.term(); if (term==null || term.field() != field) break; termDocs.seek (termEnum); while (termDocs.next()) { res.fastSet(termDocs.doc()); } } while (termEnum.next()); } finally { termDocs.close(); termEnum.close(); } res.flip(0, reader.maxDoc()); return res; } }
int docFreq = 0; for (String fieldName : fieldNames) { int freq = ir.docFreq(new Term(fieldName, word)); topField = (freq > docFreq) ? fieldName : topField; docFreq = (freq > docFreq) ? freq : docFreq;
final int freq = searcher.getIndexReader().docFreq((Term) term); freqs.put(term.toString(), freq);
private boolean isFrequent(Term term) { try { return reader.docFreq(term) >= minNumDocs; } catch (IOException e) { throw new RuntimeException(e); } }
private boolean isFrequent(Term term) { try { return reader.docFreq(term) >= minNumDocs; } catch (IOException e) { throw new RuntimeException(e); } }
@Override public final int docFreq(Term term) throws IOException { ensureOpen(); int total = 0; // sum freqs in subreaders for (int i = 0; i < subReaders.length; i++) { total += subReaders[i].docFreq(term); } return total; }
public int docFreq(Term t) throws IOException { ensureOpen(); int total = 0; // sum freqs in segments for (int i = 0; i < subReaders.length; i++) total += subReaders[i].docFreq(t); return total; }
public boolean isDocIndexed(String docid) throws IOException { assert reader!=null; if(reader.docFreq(new Term(Fields.ID.name(), docid))==0) // check if some doc contains this docid { return false; } else { return true; } }
public int docFreq(Term t) throws IOException { ensureOpen(); int total = 0; // sum freqs in segments for (int i = 0; i < subReaders.length; i++) total += subReaders[i].docFreq(t); return total; }
@Override public FunctionValues getValues(Map context, LeafReaderContext readerContext) throws IOException { IndexSearcher searcher = (IndexSearcher)context.get("searcher"); int docfreq = searcher.getIndexReader().docFreq(new Term(indexedField, indexedBytes)); return new ConstIntDocValues(docfreq, this); }
@Override public int getDocumentFrequency(String aTerm) throws SimilarityException { try { Term term = new Term(FIELD_NAME, aTerm); return getReader().docFreq(term); } catch (IOException e) { throw new SimilarityException(e); } }
public int docFreq(Term term) throws IOException { ensureOpen(); IndexReader reader = ((IndexReader)fieldToReader.get(term.field())); return reader==null ? 0 : reader.docFreq(term); }
/** * Creates a constant value source returning the docFreq of a given term * * @see IndexReader#docFreq(Term) */ public static DoubleValuesSource docFreq(Term term) { return new IndexReaderDoubleValuesSource(r -> (double) r.docFreq(term), "docFreq(" + term.toString() + ")"); }
public synchronized boolean containsValue(Object value) { try { Term term = new Term(VALUESTRING, getUniqueString(value)); return getIndexSearcher().getIndexReader().docFreq(term) > 0; } catch (Exception e) { throw new RuntimeException("could not search documents: " + value, e); } }
@Override public FunctionValues getValues(Map context, LeafReaderContext readerContext) throws IOException { IndexSearcher searcher = (IndexSearcher)context.get("searcher"); TFIDFSimilarity sim = asTFIDF(searcher.getSimilarity(true), field); if (sim == null) { throw new UnsupportedOperationException("requires a TFIDFSimilarity (such as ClassicSimilarity)"); } int docfreq = searcher.getIndexReader().docFreq(new Term(indexedField, indexedBytes)); float idf = sim.idf(docfreq, searcher.getIndexReader().maxDoc()); return new ConstDoubleDocValues(idf, this); }
@Override public FunctionValues getValues(Map context, LeafReaderContext readerContext) throws IOException { IndexSearcher searcher = (IndexSearcher)context.get("searcher"); TFIDFSimilarity sim = asTFIDF(searcher.getSimilarity(true), field); if (sim == null) { throw new UnsupportedOperationException("requires a TFIDFSimilarity (such as DefaultSimilarity)"); } int docfreq = searcher.getIndexReader().docFreq(new Term(indexedField, indexedBytes)); float idf = sim.idf(docfreq, searcher.getIndexReader().maxDoc()); return new ConstDoubleDocValues(idf, this); }