I am developing a system for forecasting time series. I bought the Encog3 book for Java, but I need to know what it takes to send a CSV file with 3 columns and try to predict the second column. CSV is defined as follows:
Date, DeviceConsumption,TotalPower
I need to load this file into the loader and specify the column that I want to predict (this DeviceConsumption). The third column is used to provide additional information and create a template.
In examples (e.g. sunspots) I see
TemporalMLDataSet result = new TemporalMLDataSet(windowSize,1);
TemporalDataDescription desc = new TemporalDataDescription(new ActivationSIN(),Type.RAW, false, true);
result.addDescription(desc);
but where can I identify the column that I want to predict?
Thank.
EDIT 2
I have made several improvements:
, .
2 TemporalDataDescription, .
TemporalMLDataSet?
TemporalMLDataSet result = new TemporalMLDataSet(WINDOW_SIZE,1);
TemporalDataDescription desc = new TemporalDataDescription(
TemporalDataDescription.Type.RAW,true,true);
result.addDescription(desc);
TemporalDataDescription desc2 = new TemporalDataDescription(
TemporalDataDescription.Type.RAW,false,true);
result.addDescription(desc2);
for(int year = TRAIN_START;year<TRAIN_END;year++)
{
TemporalPoint point = new TemporalPoint(2);
point.setSequence(year);
point.setData(0, this.deviceConsumption[year]);
point.setData(1, this.TotalPower[year]);
result.getPoints().add(point);
}
result.generate();
?
EDIT3 !