Disclosed is a computer-implemented method of generating a time-series of data sets for predictive analysis from data comprising input variables and an output variable recorded at sequential time points, the method comprising: dividing the data into a collection of observations, each observation comprising: a subset of sequential time points; associated input variables; and an output variable recorded at a forecasting time point beyond the latest sequential time point of the subset; and using the collection of observations in a convolution neural network to predict the output at the forecasting time point of a streaming data set.