starting a daily time series in R

后端 未结 4 755
忘掉有多难
忘掉有多难 2020-11-27 17:12

I have a daily time series about number of visitors on the web site. my series start from 01/06/2014 until today 14/10/2015 so I wish to predict n

4条回答
  •  清歌不尽
    2020-11-27 17:49

    Here's how I created a time series when I was given some daily observations with quite a few observations missing. @gavin-simpson gave quite a big help. Hopefully this saves someone some grief.

    The original data looked something like this:

    library(lubridate)
    set.seed(42)
    minday = as.Date("2001-01-01")
    maxday = as.Date("2005-12-31")
    dates <- seq(minday, maxday, "days")
    dates <- dates[sample(1:length(dates),length(dates)/4)] # create some holes
    df <- data.frame(date=sort(dates), val=sin(seq(from=0, to=2*pi, length=length(dates))))
    

    To create a time-series with this data I created a 'dummy' dataframe with one row per date and merged that with the existing dataframe:

    df <- merge(df, data.frame(date=seq(minday, maxday, "days")), all=T)
    

    This dataframe can be cast into a timeseries. Missing dates are NA.

    nts <- ts(df$val, frequency=365, start=c(year(minday), as.numeric(format(minday, "%j"))))
    plot(nts)
    

提交回复
热议问题