library(forecast)
library(ggplot2)

# Map 1-based optional input ports to variables
dataset1 <- maml.mapInputPort(1) # class: data.frame
dataset2 <- maml.mapInputPort(2) # class: data.frame

seasonality<-1
labels <- as.numeric(dataset1$data)
timeseries <- ts(labels,frequency=seasonality)
model <- auto.arima(timeseries)

numPeriodsToForecast <- dim(dataset2)[1]
fc <- forecast(model, h=numPeriodsToForecast)
forecastedData <- as.numeric(fc$mean)
summary(model)

output <- data.frame(time=dataset2$date,
    data=dataset2$data,forecast=forecastedData)
data.set <- output
attr(data.set$forecast, "feature.channel") <- "Regression Scores"
attr(data.set$forecast, "score.type") <- "Assigned Labels"
# Select data.frame to be sent to the output Dataset port
maml.mapOutputPort("data.set");

# Display plots
autoplot(fc)