What's Changed
Major Changes 🛠
- Handle release of pymc 5.25.0 by @daniel-saunders-phil in #1844
- Migrate to prior module from pymc-extras by @williambdean in #1767
New Features 🎉
- Sensitivity analysis and marginal effects by @drbenvincent in #1673
- Add
table
method to ModelBuilder to display rich table by @williambdean in #1786 - Allow for indexing of apply parameters by @williambdean in #1847
- index transformation variables in higher dimension cases by @williambdean in #1857
- allow for arbitrary additive effects in MVITS model by @williambdean in #1861
- Allow Lists and NumPy Arrays as Transformation Priors by @timbo112711 in #1879
- Support HSGP instance for time_varying_media in MMM by @cetagostini in #1881
- Support HSGP instance for time_varying_intercept in MMM by @cetagostini in #1894
- Add Fivetran data loaders by @cetagostini in #1887
- Add more Basis implementations for use with EventEffect by @TeemuSailynoja in #1911
Bugfixes 🐛
- hot fix (test match) by @juanitorduz in #1852
- Update and reduce size multi_mmm.nc by @juanitorduz in #1854
- Deprecate and disable budget optimization method & Updating notebook by @cetagostini in #1832
- Handle 0-dim channel_xr in create_zero_dataset by @cetagostini in #1890
- Fix grid shape logic in saturation_curves and add tests by @cetagostini in #1889
- Updating prior predictive notebook by @cetagostini in #1897
- Streamlit Dependency Fix by @timbo112711 in #1904
- Fix FourierEffect by @PabloRoque in #1909
Documentation 📖
- fix the link to Labs YouTube by @williambdean in #1822
- Fix notebooks titles MMM in gallery by @juanitorduz in #1843
- Remove reference to linear_saturation function by @williambdean in #1833
- Updating MMM Budget allocation examples, functionalities and dependencies by @cetagostini in #1849
- Add
rfm_train_test_split
example to CLV Quickstart by @ColtAllen in #1855 - lift test requires 'date' in df_lift_test Data Frame with time_varying_media=True by @timbo112711 in #1818
- MMM: Fix Scaling Intercept by @juanitorduz in #1845
- Implement multidimensional scaling approach in regular MMM by @cetagostini in #1862
- Update MMM comparison table by @williambdean in #1878
- Get marginal_effects hdi estimates by @PabloRoque in #1885
- Correcting typo around yml files and csv files. by @cetagostini in #1888
- Improve saturation function docs by @daniel-saunders-phil in #1892
- Improvements on multidimensional notebook by @daniel-saunders-phil in #1876
- Clean badges by @juanitorduz in #1896
- Fourier transformation and HSGPs for streamlit app by @timbo112711 in #1898
- Add usage examples and documentation to MMM modules by @cetagostini in #1895
- Assign coords to multidimensional fit_data by @PabloRoque in #1902
Maintenance 🔧
- Add callback tracking to budget optimizer by @cetagostini in #1829
- Cosmetic changes to #1829 by @PabloRoque in #1830
- Add support for time-based budget distribution in optimizer by @cetagostini in #1841
- fix(clv): Improve validation for missing columns in CLVModel by @aaron1-z in #1851
- Adding arguments to model builder by @cetagostini in #1867
- Add causal graph support to MMM with DAG serialization by @cetagostini in #1882
- Refactor
ModelBuilder
into smaller classes by @ColtAllen in #1870 - Update requirements.txt [StreamlitApp] by @juanitorduz in #1900
- fix mypy overide by @juanitorduz in #1901
- Updates Streamlit App Requirements by @timbo112711 in #1903
- Multidimensional support in plot_sensitivity_analysis by @PabloRoque in #1886
- Minor convenience to override model_kwargs in build_mmm_from_yaml by @PabloRoque in #1907
- Normalize gaussian basis by @PabloRoque in #1912
New Contributors
- @daniel-saunders-phil made their first contribution in #1844
- @aaron1-z made their first contribution in #1851
Full Changelog: 0.15.1...0.16.0