1樓:手機使用者
不知道你知不知道什麼叫泛型,你可以寫成list,然後在while中給transact賦值,比如說transact.setcontener(contener)然後,把你內
需要的字段容全部set進去,然後在translist.add(transact)。ok問題解決。
如果你這都看不懂的話,建議去看看書
用matlab實現apriori演算法關聯規則的挖掘程式,完整有詳細註解 5
2樓:匿名使用者
下面這段是apriori演算法中由2頻繁項集找k頻繁項集的程式,程式中有兩個問題:
1、似乎while迴圈的k永遠都是固定的,也就是都是頻繁2項集的個數。得到頻繁3項集後k的個數不是要變嗎?如何體現呢?
2、程式中有兩個for的大迴圈,但是發現結果是只要找到乙個頻繁3項集第二個for迴圈就會結束,但是其實還應該有其它的頻繁3項集。for迴圈不是應該無條件執行到引數k結束嗎?當時k值是15,可是程式結束的時候i=2,j=3,然後j就不執行4以及一直到k的部分了。
是什麼原因呢?麻煩高手指點一下。急啊……
while( k>0)
le=length(candidate);
num=2;
nl=0;
for i=1:k-1
for j=i+1:k
x1=candidate; %candidate初始值為頻繁2項集,這個表示頻繁項集的第i項
x2=candidate;
c = intersect(x1, x2);
m=0;
r=1;
nn=0;
l1=0;
if (length(c)==le-1) & (sum(c==x1(1:le-1))==le-1)
houxuan=union(x1(1:le),x2(le));
%樹剪枝,若乙個候選項的某個k-1項子集為非頻繁,則剪枝掉
sub_set=subset(houxuan);
%生成該候選項的所有k-1項子集
nn=length(sub_set);
%判斷這些k-1項自己是否都為頻繁的
while(r & m=th
ll=ll+1;
candmid=cand;
pfxj(nl).element=cand;
pfxj(nl).time=nn;
disp('得到的頻繁項集為:')
result=(candmid);
disp(result);
endend
endend
apriori演算法是什麼?適用於什麼情境
3樓:匿名使用者
經典的關聯規則挖掘演算法包括apriori演算法和fp-growth演算法。apriori演算法多次掃瞄交易資料庫,每次利用候選頻繁集產生頻繁集;而fp-growth則利用樹形結構,無需產生候選頻繁集而是直接得到頻繁集,大大減少掃瞄交易資料庫的次數,從而提高了演算法的效率。但是apriori的演算法擴充套件性較好,可以用於平行計算等領域。
apriori algorithm是關聯規則裡一項基本演算法。是由rakesh agrawal和ramakrishnan srikant兩位博士在2023年提出的關聯規則挖掘演算法。關聯規則的目的就是在乙個資料集中找出項與項之間的關係,也被稱為購物藍分析 (market basket analysis),因為「購物藍分析」很貼切的表達了適用該演算法情景中的乙個子集。
如何提高apriori演算法的效率
4樓:匿名使用者
apriori演算法是關聯規來
則挖掘中
源的經典演算法bai。在apriori演算法中,使用頻繁項集的先驗知du識,逐層搜尋的迭代方zhi法,通過掃瞄資料dao庫,累積每個項的計數,並收集滿足最小支援度的項,找每個lk都需要掃瞄一次資料庫。演算法的效率隨著資料量的增大,頻繁項集的增多,演算法的效率就非常的低,本文通過對apriori演算法分析,應用雜湊、事務壓縮、劃分、抽樣等方法,最大可能的減少資料庫掃瞄的次數,快速發現頻繁項集,提高apriori演算法的效率。
如何實現apriori演算法
VB的演算法問題,VB的乙個演算法問題
你換個思路嘛!用累加就很容易解決了,用不著考內慮有多少種組合!容dim x as single if check1.value 1 then x x val text1.text if check2.value 1 then x x val text2.text if check3.value 1 ...
vb中的演算法問題,VB乙個演算法問題。
你的舉例很簡bai單的啊,用dufor 迴圈就可以實現。private sub mand1 click i 0 for a 1 to 9 for b 3 to 9 if a b 15 then list1.additem a a b b i i 1 next b next a print a b 1...
排列組合的演算法問題,乙個排列組合的演算法問題
貌似是求組合的,現寫了個比較簡單的,可得出任意n選m的組合 include include void print int beg,int end void c int n,int m else if m n return p int malloc sizeof int m for i 1 i m i...