# Ideal statistical or machine learning technique to model highly cross-correlated data

I'm trying to build a model that can predict streamflow for an alpine (snowmelt-fed) watershed using snow albedo (roughly, the energy reflectance of the snow) data. Albedo controls the melt of the snowpack, and higher albedo means slower melt, and vice versa. I have daily time-series data for both the snow albedo and streamflow, for 12 years from 2002-2013. The albedo time-series was obtained by spatially-averaging albedo data (raster files) from NASA's MODIS satellite.

I have tried various methods (simple regression, GLMs, GAMs, decision trees and random forests) to build the flow prediction model, but all of them fail because of the autocorrelated relationship between albedo and flow. Since the albedo is a snowpack property, there is a lag between it and the flow (related to snowmelt).

The Cross correlation function (CCF) between albedo and flow is shown below:

I have tried to include albedo lags of various days into the models, but I'm not able to mimic the distributed lag relationship between albedo and flow. I have tried to add precipitation, temperature and other climatic data to the predictors, but they don't seem to help. There are similar lagged and cross-correlation problems between these other predictors and flow.

The albedo, flow, precipitation and air temperature time-series are shown below:

Is there a statistical or machine learning technique in R that I can explore to build the albedo-streamflow model?

• Do you have multiple time series? --- that is, multiple albedo series, multiple streamflow series (for different areas). did you try multivariate time series? – kjetil b halvorsen Apr 22 '15 at 8:05
• @kjetilbhalvorsen What do you mean by multiple series? I have one albedo time-series from 2002-2013, with daily temporal frequency (4383 values). I have similar series for temperature, precipitation, soil moisture, soil temperature and snow depth. I want to use the albedo time-series, along with the other series, to predict the streamflow time-series, which is also between 2002-2013 and 4383 values. – small_world Apr 22 '15 at 17:34
• The question was if you had such series "for multiple areas". The answer seems to be no. So, you have long faily series---apart from seasonality, are they stationary? – kjetil b halvorsen Apr 22 '15 at 17:42
• @kjetilbhalvorsen I performed the Ljung-Box test and the Augmented Dickey-Fuller (ADF) t-statistic test on the albedo and flow data. Both of them gave p-values less than 0.05, which seems to suggest stationarity. I also plotted the ACF (auto-correlation function) and PACF (partial auto-correlation function) for albedo, flow, temperature and precipitation. Flow and albedo: imgur.com/WlaSXFS Precip and temperature: imgur.com/EuYOPrt Is there anything else I can do to check stationarity? – small_world Apr 23 '15 at 19:49
• Hey @small_world, did you ever get a model working? I'd love to know more about it. – Willem van Doesburg Jul 27 '17 at 22:40