2012-01-27 29 views
0

我有兩個MySql表格,其中一個包含一組6000個用戶,另一個是他們爲產品提供的10000個評級。我想製作一個特徵向量矩陣,對於每一行表示用戶a或0的特徵向量,如果他們已經對特定產品(或甚至評級值)給予了評級。什麼是最好的方法來實現這一點(也給矩陣將稀疏?)。從mySQL表格中生成超大型矩陣?

我很好奇我可以用我可以使用的工具(如MySQL或Matlab)測試哪些實現 - 最終目的是執行類似用戶的聚類。不知何故,我認爲10,000列的MySQL表不會讓我的數據庫管理員高興......

謝謝!

回答

0

存儲在SQL 稀疏矩陣的顯而易見的方法是使用三個列,其中userproduct一起是主鍵,額外的列是評級。

用SQL數據庫進行實際處理沒有意義。這只是一個巨大的開銷,並使事情變得緩慢。只需將數據轉化爲原始且快速的數據結構,進行分析,然後最終以您需要的任何輸出格式翻譯輸出。

當您只需要部分數據或必須執行更改,需要鎖定以及所有這些時,SQL是很好的選擇。但是我絕對不會直接在數據庫上運行計算,因爲除非您可以將低級線性代數庫加載到數據庫中,否則它會很慢。