Time Series Decomposition of weekly data
r, statistics, time-series
Solution
Welcome to R!
Yes, the frequency is 52.
If the data is not already classed as time-series, you will need both `ts()` and `decompose()`. To find the class of the dataset, use `class(data)`. And if it returns `"ts"`, your data is already a time-series as far as R is concerned. If it returns something else, like `"data.frame"`, then you will need to change it to time-series. Assign a variable to `ts(data)` and check the class again to make sure.
There is a monthly time-series dataset `sunspot.month` already loaded into R that you can practice on. Here's an example. You can also read the help file for `decompose` by writing `?decompose`
class(sunspot.month)
[1] "ts"
> decomp <- decompose(sunspot.month)
> summary(decomp)
Length Class Mode
x 2988 ts numeric
seasonal 2988 ts numeric
trend 2988 ts numeric
random 2988 ts numeric
figure 12 -none- numeric
type 1 -none- character
> names(decomp)
[1] "x" "seasonal" "trend" "random" "figure" "type"
> plot(decomp) # to see the plot of the decomposed time-series
The call to `names` indicates that you can also access the individual component data. This can be done with the `$` operator. For example, if you want to look at the seasonal component only, use `decomp$seasonal`.
r time-series
Problem
I am totally new to R and have just started using it. I have three years of weekly data. I want to decompose this time series data into trend, seasonal and other components. I have following doubts: - Which function I should use - `ts()`or `decompose()` - How to deal with leap year situation. Please correct me if I am wrong, the frequency is 52. Thanks in Advance. I would really appreciate any kind of help.