public BitArray CalculateCoarseGraining(Person person, int wordLength) { //calculate snapshots var snapshots = CalculateSnapshots(person); //convert snapshots to a long string of data string sequence = snapshots .GetActivityCodeSequence() .Cast <int>() .AllToString(); IHuffmanFixedLengthCoding c = new HuffmanFixedLengthCoding(); c.Build(sequence, wordLength); var result = c.Encode(); person.CoarseGrainedSequence = result; log.Debug("Total numer of words in sequence: " + c.SequenceInWords.Count()); result.TraceEncoded(); c.TraceWords(); return(result); }
public void EncodeWithoutBuildingAtreeThrowsException() { IHuffmanFixedLengthCoding c = new HuffmanFixedLengthCoding(); c.Encode(); Assert.Fail("Should not come here"); }
public IDictionary <string, decimal> GetCanonicalWordsProbability(Person p, int wordLength) { IHuffmanFixedLengthCoding c = new HuffmanFixedLengthCoding(); string sequence = p.GetNhanceSequenceString(); return(c.CalculateCanonicalWordsProbability(sequence, wordLength)); }
public IDictionary <string, decimal> GetWordsProbability(Person p, int wordLengh) { IHuffmanFixedLengthCoding c = new HuffmanFixedLengthCoding(); string sequence = p.GetNhanceSequenceString(); c.Build(sequence, wordLengh); return(c.WordsProbability); }
public string GetWordsProbabilitiesAsString(Person p, int wordLengh) { IHuffmanFixedLengthCoding c = new HuffmanFixedLengthCoding(); string sequence = p.GetNhanceSequenceString(); c.Build(sequence, wordLengh); log.Debug(p.Id + ". Total numer of unique words in sequence: " + c.WordsProbability.Count); return(c.GetWordsAsSingleString()); }
//[Test] ////[Ignore] //public void SaveNhanesGroupActivityStatsTest() //{ // var fName = nhanesGroupService.SaveNhanesGroupActivityStats(TestedGroup); // Assert.That(File.Exists(fName)); // Assert.That(File.ReadAllBytes(fName).Length > 0); //} //[TestCase(10)] //[Ignore] //public void SaveNhanesGroupWordsTest(int wordLength) //{ // var result = nhanesGroupService.SaveWordsProbabilitiesAsString(TestedGroup, wordLength); // foreach (var fName in result) // { // Assert.That(File.Exists(fName)); // Assert.That(File.ReadAllBytes(fName).Length > 0); // } //} private BitArray GetHuffmanEncodedSequence(Person p, int wordLengh) { IHuffmanFixedLengthCoding c = new HuffmanFixedLengthCoding(); string sequence = p.GetNhanceSequenceString(); c.Build(sequence, wordLengh); var encoded = c.Encode(); return(encoded); }
public void EncodeTest(string sequence, int wordLenth, string expected) { IHuffmanFixedLengthCoding c = new HuffmanFixedLengthCoding(); c.Build(sequence, wordLenth); var actual = c.Encode(); c.TraceWords(); actual.TraceEncoded(); Assert.AreEqual(expected, actual.ToBitString()); }
public void EncodeDecodeTest(string sequence, int wordLenth) { IHuffmanFixedLengthCoding c = new HuffmanFixedLengthCoding(); c.Build(sequence, wordLenth); var encoded = c.Encode(); c.TraceWords(); encoded.TraceEncoded(); string actual = c.Decode(encoded); Assert.AreEqual(sequence, actual); }
//[TestCase("Data\\AnnaKarenina.Chapter1.txt", 6)] //[TestCase("Data\\AnnaKarenina.Chapter1.txt", 3)] public void EncodeDecodeFromFileTest(string path, int wordLenth) { string content = File.ReadAllText(path); IHuffmanFixedLengthCoding c = new HuffmanFixedLengthCoding(); c.Build(content, wordLenth); var encoded = c.Encode(); c.TraceWords(); encoded.TraceEncoded(); string actual = c.Decode(encoded); Assert.AreEqual(content, actual); }
public BitArray GetHuffmanEncodedSequence(Person p, int wordLengh) { IHuffmanFixedLengthCoding c = new HuffmanFixedLengthCoding(); string sequence = p.GetNhanceSequenceString(); c.Build(sequence, wordLengh); var encoded = c.Encode(); string traceStr = "Person " + p.Id + " has " + c.WordsProbability.Count + " words"; log.Debug(traceStr); wordsLog.Debug("Person " + p.Id); c.TraceWords(wordsLog); encoded.TraceEncoded(wordsLog); wordsLog.Debug("==========*******==========="); wordsLog.Debug("==========*******==========="); wordsLog.Debug("==========*******==========="); p.WordsProbability = c.WordsProbability; return(encoded); }