Seasonal Adjustment of Daily Data I have daily data with only weekday values. So my week is 5 days in my data set. I want to use TBATS function in R. I am suspecting weekly, bi-weekly, monthly and annual seasonality in my data after periodogram check. In this case how should I define the seasonal.periods in tbats function? Would this be ok:
x <- msts(x, seasonal.periods=c(5, 10, 21.66, 260))

I am little confused because my year is not equal to 365.25 days. So can I just assume my year is = 365.25 * 5/7?
I am sorry if this question was asked before but I couldn't find an answer. Thank you.
 A: You might want to review https://stats.stackexchange.com/search?q=user%3A3382+DAILY+DATA for a comprehensive discussion of how to handle daily data which can be affected by holidays , day-of-the-month , level shifts , time trends , pulses , week-of-the-month , long-weekends , et al . IMHO TBATS is broadly insufficient to deal with opportunities like these to correctly analyze daily data.
Delete all non-seasonal factors thus the fitted values reflect the "seasonally adjusted series" as the fitted values just reflect the seasonal component and no other factor/feature.
In reponse to OP's comment
What you refer to as "seasonality" are simply omitted exogenous variables/factors . These can be identified and incorporated as such. Your seasonality is not endogenous i.e. rear-window arima stuff BUT exogenous. If you post you data I would be glad to be more analytical/specific. You may be an "arima person i.e. a rear-window predicter" but there is a more structured/generalized approach called Transfer Functions which is sometimes referred to as XARMAX model or ARMAX models that explicitely incorporate fixed effects like day-of-the-week , week-of-the-month , day-of-the-month, month-of-the-year, level shifts , time trends et al AND also arima structure..
A: Your msts object looks right, but if you are trying to do seasonal adjustment rather than forecasting, I recommend using mstl() rather than tbats().
library(forecast)
library(ggplot2)
x <- msts(x, seasonal.periods=c(5, 5*2, 365.25*5/7/12, 365.25*5/7)
mstl(x) %>% autoplot()
mstl(x) %>% seasadj() %>% autoplot()

