我没有真正的问题,但我更喜欢寻找问题的创意输入。
我想比较两个(很可能是不相等的)日期值并计算它们的相似性比率。例如,如果我比较08.01.2013
和10.01.2013
,我会得到一个相对较高的值,但在08.01.2013
和17.04.1998
之间,它会非常低。
但现在我不确定如何准确计算相似度。首先,我考虑将Date值转换为Strings,然后对它们使用EditDistance(单个char操作的数量将一个String转换为另一个)。对于某些情况,这似乎是一个好主意,我肯定会实现它,但我还需要对31.01.2013
和02.02.2013
答案 0 :(得分:1)
为什么不以两个日期之间的天数差异作为起点? 相似日期为“低”,不等日期为“高”,然后使用算术获得符合要求的“相似比”。
如果你遇到困难,请考虑过去“足够早”的固定参考日期。
答案 1 :(得分:0)
可以使用Levenshtein距离计算编辑距离。
一年中的变化意味着比一天中的变化更多的“距离”。 比较天数的通常方法是计算以天或小时为单位的距离。为此,您可以转换序列日期中的两个日期。 Microsoft提供DateDiff()函数用于日期比较和距离计算。