挖掘频繁项集
一,Apriori算法
Apriori算法的基本思路:
? ? ? ? 產生L1候選集,剪枝(去掉L1里面不符合最小支持度的),連枝產生L2候選集,剪枝(去掉候選集不在數據集里的和不滿足最小支持度的),產生L3。。。直到不能再產生新的候選集(具體判定就是連枝的時候,k-2項集不存在,這時不能生成k項集)
算法中需要注意的細節
? ? ? ? 為了在統計L1候選集的頻次的時候,能把L1作為字典的健,要把L1進行frozenset。用map()函數,把list里面的每一個元素都轉換成set,轉換之后會有重復的set(set的不重復性指的是set內部)。
? ? ? ? if a.issubset(b):如果a是b里面的子集則返回為真
? ? ? ? 數據集要預處理轉換成set形式,這樣才能保證數據集的安全性
? ? ? ?對于兩個游標的(一般用于集合內的排列組合):
for i in range(len):for j in range(i+1,len)? ? ?前k-2項是list[:k-2],冒號別忘了
?
? ? ? ??
? ? ?
轉載于:https://www.cnblogs.com/yttas/p/9991667.html
總結
- 上一篇: 快讯|腔镜手术机器人研发商“北京术锐”完
- 下一篇: 判断当前访问平台