我有一個包含10列的數據集。第一列是唯一標識符。其他9列是相關的屬性。現在,我們只是說它們是整數。如果需要,數據可以很容易地轉換爲鍵值。唯一組合頻率
例:
id|attr1|attr2|attr3|...
a | 2 | 5 | 7 |...
b | 3 | 1 |null |...
c | 2 |null |null |...
d | 1 | 2 | 5 |...
e | 2 | 1 | 3 |...
我本質上尋找任何長度的至少一對最常見的組合。所以我對這個輸出是:
unq | frequency
1,2 | 2
1,3 | 2
1,5 | 1
2,3 | 1
2,5 | 2
2,7 | 1
1,2,3 | 1
1,2,5 | 1
2,5,7 | 1
(手動這樣做 - 所以希望沒有錯誤) - 在配對的順序並不重要。 2,5,7 = 5,2,7 = 7,5,2 etc.
有什麼想法?我對不同的工具開放。我有權訪問R,excel,sql server,mysql等。
Excel
是首選,但不是必需的!
有多少屬性,以及屬性可以採用的值的範圍是多少?一個天真的算法可能不會擴展,我不知道是否有任何易於理解的算法(但我不是這方面的專家) – frankc 2011-06-10 15:33:05
你能解釋你如何從你的數據集到你的答案?我正在努力理解「至少有一對任何長度的最常見的組合」。 – 2011-06-10 16:24:23
得到了一些更好的信息。它可以有1到9個屬性。 @Richie - 基本上爲行d - 這裏是所有該行(分號分隔)的獨特組合: '1 1,2- 1,5- 2,5- 1,2,5-' 所以唯一符合「至少一對」標準的是 1,2 1,5 2,5 1,2,5' 這有幫助嗎?如果沒有,請隨時再問一次。我想在我的答案中清楚。 – elgabito 2011-06-10 16:40:55