I'm trying to learn bayesian structural time series analysis. For a variety of reasons I need to use Python (mostly pymc3) not R so please do not suggest the bsts R package. Moreover, I would like to gain a conceptual understanding not use a black box. I've posted a few questions on StackOverflow regarding prediction and seasonality. The SO questions are still open and I didn't want to violate any rules/etiquette by reposting here. However, I'm beginning to think I have a conceptual misunderstanding. Can anyone recommend online tutorials or lectures for exploring Bayesian structural models using MCMC preferably in Python?

  • $\begingroup$ Take a look at PyStruct $\endgroup$ Commented Aug 28, 2017 at 21:59
  • $\begingroup$ There is a nice set of notebooks using Python, including space state models, SARIMA, and other time series models in this GitHub repo. $\endgroup$ Commented Apr 27, 2018 at 9:31
  • $\begingroup$ I could provide references if it was bayesian time series-mcmc but bayesian structural might be slightly different so I don't want to confuse the issue. If you don't mind, could you give a reference for bayesian structural ? thanks. $\endgroup$
    – mlofton
    Commented Dec 4, 2018 at 8:29
  • $\begingroup$ @mlofton I pretty much mean models of the form linked in the question (prediction and seasonality links). $\endgroup$
    – Paul
    Commented Aug 20, 2019 at 19:38
  • $\begingroup$ @Paul: Thanks for clarification. You should definitely check out Andrew Harvey's blue book ( forget the name ) and Harrison and West's, "Dynamic Linear Models". $\endgroup$
    – mlofton
    Commented Aug 21, 2019 at 18:31

1 Answer 1


You might be interested in TensorFlow Probability. It has a Python API, and has been chosen to replace Theano as the PyMC3 backend at some point in the future. Tensorflow Probability can also be used for MCMC directly, and it has dedicated functionality for Bayesian structural time series modelling. There is a nice blog post which provides an introduction.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.