【发布时间】:2019-02-03 19:01:35
【问题描述】:
我有一个巨大的数据集,其中包含一些重复数据(用户日志文件),并希望根据用户下载进行类似的模式出现识别和推荐。模式识别完成后,我需要向用户推荐最佳价值。
例如以下是基于时间的下载日志:
A C D F A C D A B D A C D F A C D A B D
我想识别此数据集之间存在的模式并将结果显示为:
A -> C = 4
C -> D = 4
D -> F = 2
F -> A = 2
D -> A = 3
A -> B = 1
B -> D = 1
A -> C -> D = 2
C -> D -> F = 2
D -> F -> A = 1
F -> A -> C = 1
C -> D -> A = 1
D -> A -> B = 1
A -> B -> D = 1
末尾的数字表示该模式的重复次数。 当用户输入“A”时,最好的推荐应该是“C”,如果用户输入是“A -> C”,那么应该是“D”。
目前我正在使用 Python 中的 pandas 进行数据清理和模式识别,我认为 scikit-learn 可能有效(但不确定)。 有没有什么好的库或算法可以用来解决这个问题,或者有什么好的方法可以解决这个问题?
由于数据量很大,我是用Python实现的。
【问题讨论】:
-
当这种模式有 4 次重复时,为什么 A->C = 2? C->D 也一样?
-
@VivekKumar 对不起我的错误。已编辑。谢谢。
-
不只是这两个,其他的都有类似的错误。
D->F,F->A,D->A... 无论如何,我得到你想要的。但是您应该发布来自您的真实数据的样本,而不是 A、B、C..(除非那是您的真实数据)
标签: python scikit-learn pattern-matching bigdata data-science