fixed first level of frequent patterns not being filtered

This commit is contained in:
IGI-111
2015-04-03 23:10:11 +02:00
parent 614a615a12
commit 5ba00085d1

View File

@@ -52,5 +52,5 @@ singletons table = Set.toList $ foldr (\(ItemSet row) old -> old `Set.union` row
frequentPatterns :: Frequency -> [ItemSet] -> [[ItemSet]] frequentPatterns :: Frequency -> [ItemSet] -> [[ItemSet]]
frequentPatterns thresh table = until (\x -> [] == head x) (\x -> filterByFrequency (generateNextLevel (head x)) : x) [firstLevel] where frequentPatterns thresh table = until (\x -> [] == head x) (\x -> filterByFrequency (generateNextLevel (head x)) : x) [firstLevel] where
firstLevel = map (\x -> ItemSet $ Set.fromList [x]) (singletons table) firstLevel = filterByFrequency $ map (\x -> ItemSet $ Set.fromList [x]) (singletons table)
filterByFrequency = filter (\x -> frequency table x >= thresh) filterByFrequency = filter (\x -> frequency table x >= thresh)