2013-01-08 86 views
0

我没有一个真正的问题,但我更喜欢寻求一个问题的创造性投入。日期类型值模糊匹配

我要比较两个(最有可能不等)日期值,并计算其相似的比例。因此,举例来说,如果我比较08.01.201310.01.2013我会得到一个相对高值,但08.01.201317.04.1998之间这将是非常低的。

但现在我不知道我应该如何精确计算相似度。首先,我正考虑将日期值转换为字符串,然后使用EditDistance(单个字符操作数将一个字符串转换为另一个字符串)。这似乎是对某些情况下是个好主意,我会definitly实现它,但我还需要像31.01.201302.02.2013

回答

1

为什么不使用两个日期之间的差异作为起点? 相似日期为“低”,不相等日期为“高”,然后使用算术获得符合您要求的“相似比”。

如果您遇到困难,请考虑在过去“足够早”的固定参考日期。

+0

非常感谢我的帮助。我计算了日期之间的时间差,然后计算了时间差和被认为是预计/可接受推导的时间跨度之间的比率。 –

+0

欢迎 - 很高兴它的工作 –

0

编辑距离可以使用Levenshtein距离来计算适当的计算。

年中的变化意味着比当天的变化更多的“距离”。 通常比较天数的方法是以天或小时计算距离。要做到这一点,你需要在一个连续的日期数字中转换两个日期。 Microsoft为日期比较和距离计算提供DateDiff()函数。