public void TestMostFrequentValue() { var dist = new FrequencyDistribution <string>("a a a a b c d e e ffff".Split(" ")); Assert.AreEqual(4, dist.MostFrequentValue()); }
/// <summary> /// Calculates the modified unigram precision score as described in section 2.1 of the paper. /// </summary> /// <param name="reference">The reference as a collector.</param> /// <param name="candidate">The candidate as a collector.</param> /// <returns>The Modified n-gram precision score.</returns> public double ModifiedUnigramPrecision(ICollector <string> reference, ICollector <string> candidate) { var referenceDist = new FrequencyDistribution <string>(reference.Collect()); return(referenceDist.MostFrequentValue() / (double)candidate.Size()); }