2013-03-05 24 views
2

我在計算Jaccard相似從銷售交易的MySQL數據庫發現使用事務ID同類書籍這個問題:如何在Java或JSP中實現Jaccard索引?

T1 =爪哇,紅寶石,C

T2 =的Java,C#,Python的

T3 = C#,VB,C

....等

爪哇路口= 2的大小; (我們怎樣才能找到它?)

工會的大小= 3,(我們怎麼能找到它?)

Jaccard相似=(路口/集)= 2/3

但我不明白我怎麼能找出這兩個向量的「交集」和「聯合」,或者如何在Java/JSP中實現它。

請幫助我,並多謝!

+0

數據在MySQL數據庫中看起來像什麼?工會的定義是什麼?交叉點的定義是什麼? – 2013-03-05 16:31:34

+0

MySQL數據庫中的數據是事務ID,書名和客戶ID /名稱。我想從所有銷售交易(聯盟)中找出每筆交易中購買量最高的圖書(交叉點)。 – Kimberly 2013-03-05 16:36:27

+0

可能是有用的相同的方法使用Arraylist - http://stackoverflow.com/questions/5283047/intersection-union-of-arraylists-in-java – 2013-03-05 19:39:57

回答

0

您需要使用標準Set類之一。您可以對集合進行相交,聯合和大小計算。

+0

嗨康斯坦丁,非常感謝,我仍然很困惑如何使用Set類。因此,是否有任何示例實現可以讓你知道哪些會給我一個清晰的畫面。再次感謝! – Kimberly 2013-03-05 16:38:51

+1

http://docs.oracle.com/javase/tutorial/collections/interfaces/set.html – 2013-03-05 16:44:54