我有一個使用日誌的熊貓數據幀:創建從日誌共現表在一個數據幀
event_time session_id object
10:00:03 1 A
10:00:03 1 B
10:00:03 1 C
10:00:03 1 E
10:00:03 2 J
10:00:03 2 O
10:00:03 2 A
10:00:03 2 A
我已經SESSION_ID分組的對象。我現在想要針對包含這些對象在一個組中共同出現的次數的任何給定對象對(每個單元格與對象構建一個對象的共現矩陣)(即針對相同的session_id):沿着以下幾行的內容:
A B C ...
A 20 1 12
B 1 100 9
C 12 9 30
...
有沒有一種方法可以在字典形式有上述所有非零事件不代表任何給定的對象'鍵'?
顯然,矩陣將是三角形的。有沒有辦法將矩陣轉換爲表格的熔化數據表:
Object 1 Object 2 # of co-occurences
A A 20
A B 1
... ... ...
在此先感謝您的幫助。
更新:我正在運行12MB數據的原型驗證算法,但會在c上的AMAZON上運行'for real'。來自多TB數據集的2-3 GB數據。我不認爲GB是相當豬的領土 - 更有效的建議回答更好
我希望能夠查找字典中的對象,然後看到與它們共同發生的所有對象和計數(可能最終索引Solr中該結構在未來)
這看起來像是我可以用通過查看列建立一個聯合occurence表。我擔心的是,對於大數據集,0將成爲內存禁止(因爲矩陣將是稀疏的)。 – user7289
不知道如何使用SparseDataFrame執行此操作(這裏的解決方案都不是稀疏的),也許將此作爲MultiIndex可能會更節省空間。 –