线性回归和Java日期

时间:2010-04-07 04:53:28

标签: java math integer-overflow linear-regression

我试图找到一组数据的线性趋势线。该集包含日期对(x值)和分数(y值)。我使用的是this code版本作为算法的基础。

我得到的结果是几个数量级。我假设舍入错误或溢出有一些问题,因为我使用的是Date的getTime方法,它给你很多毫秒。 是否有人建议如何最大限度地减少错误并计算出正确的结果?

2 个答案:

答案 0 :(得分:2)

将Date返回的long值转换为更小的值可能会有所帮助。

如果你不需要毫秒精度,你可以除以1000.也许你甚至不需要秒,再除以60.

此外,该值固定在1970年1月1日。如果您只需要更近的日期,则可以减去偏移量以在2000年重新定位。

整个想法是使数据中的差异在数值上更显着(百分比)。

答案 1 :(得分:0)

unix timestamp的类型是一个整数,您正在以双精度读取数据。根据相对大小,您几乎必然会遇到麻烦。

将时间戳保持为整数或将时间转换为更适合您问题的时间