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"); } }