我从十六进制形式的二进制项目中提取4克,这意味着每个项目最多可以有65535个不同的克数。
我想将每个项目与它的克数和频率相关联,但我对如何存储所有内容感到困惑 - 这是我的第一次数据挖掘经验,我对最佳实践和常用工具没有任何线索。
我很想在关系数据库中使用类似(ITEM-NAME, GRAM1, GRAM2... GRAM65535)
的模式构建一个大表,并在其中存储频率,但我可以看到这种方法因为列数而非常不合理。
我知道必须有更好的解决方案,但我不知道在哪里看。
建议?
答案 0 :(得分:1)
存储ngram的最佳方法是prefixTree恕我直言。 是习惯于非常有效的库灵气。
树的例子:
1. gr1
1. gr2 (item1)
2. gr3 (item2,item3,item4)
2. gr3 (item1, tem2)
3. gr2
1. g3 (item5,item6)
2. g4 (item1)
其他选项是以倒排索引的格式存储: ngramm - >项目
gr1 (item1, item2)
gr2 (item1, item3)
gr3 (item2, item3)
gr4 (item1, item2)
注意:第二个选项不存储对ngram ...
至关重要的订单信息