sryza / spark-timeseries

A library for time series analysis on Apache Spark
Apache License 2.0
1.19k stars 424 forks source link

How to forecast problem in spark arima? #199

Open jinxiu2216 opened 7 years ago

jinxiu2216 commented 7 years ago

Hi, I have got TimeSeriesRDD in spark, but I don't know how to get the forecast.

val rdd = sc.textFile(path).map { line => val tokens = line.split(",") val series = new DenseVector(tokens.tail.map(_.toDouble)) (tokens.head, series.asInstanceOf[Vector]) }

val start = ZonedDateTime.of(2015, 4, 9, 0, 0, 0, 0, ZoneId.of("Z")) val index = uniform(start, 250, new DayFrequency(1)) val tsRDD = new TimeSeriesRDD(index, rdd); val arimaModel = tsRDD.map(tuple => (tuple._1, ARIMA.fitModel(1,0,1,tuple._2)))

Thanks

debasish83 commented 6 years ago

Forecast API we can add it...idea is that we use one-step ahead prediction and then add the predicted point back to the time-series to predict the next step...as the prediction horizon increases error will be impacted...are you looking into specific problem ?? The current ARIMA model can be used with a ringbuffer support...