public FPTreeTable(Arff source, ItemSet itemSet)
 {
     if (itemSet.Size() == 1)
     {
         Records = new List<FPTreeTableRecord>();
         for (int i = 0; i < source.Count(); i++)
         {
             //for every record
             FPTreeTableRecord Record = new FPTreeTableRecord();
             foreach (var item in itemSet.Items)
             {
                 if (source.RecordContains(i, item))
                 {
                     Record.Add(new FPTreeTableRecordItem(item));
                 }
             }
             if (Record.Count() != 0) { Records.Add(Record); }
         }
     }
     else
     { throw new Exception("Error creating FPTreeTable: invalid itemset, only 1-item itemset allowed"); }
 }