Commit graph

347 commits

Author SHA1 Message Date
Drobin Max
d8d819a34f
Update forecaster.py
added 'flat' growth option in docstring
2021-05-24 17:32:14 +03:00
Greg Rafferty
4b859bca01
added argument for point color to cv plot (#1895) 2021-05-10 16:04:34 -07:00
Ben Sully
0616bfb5da
Add model_to_dict and model_from_dict functions (#1871)
This commit adds the model_to_dict and model_from_dict functions, using
all of the logic that previously lived in model_to_json and
model_from_json, and converting those functions to simply reuse the new
ones.

This is useful because sometimes the user may want to serialize the dict
in some other way (e.g. another JSON serialization library such as ujson
or orjson, or something entirely different).
2021-04-20 18:10:06 -07:00
Ben Letham
83c4ef3e2b Merge branch 'patch-1' of https://github.com/loulo1/prophet into loulo1-patch-1 2021-04-20 17:49:17 -07:00
Ben Letham
847ecee033 Merge 2021-04-20 17:43:10 -07:00
loulo1
3a0061e8e1
change init into inits for CmdStanPyBackend 2021-04-14 15:39:02 +02:00
Vladimir Shargin
899b4fac13
Add include_legend flag to m.plot() (#1858) 2021-04-03 18:01:41 -04:00
Sean Taylor
94e5d2e80a Bump version numbers 2021-03-26 15:36:07 -07:00
Sean Taylor
82f3399409 Pin to last 2.* Pystan release. 2021-03-25 22:15:10 -07:00
Ben Letham
6d81543eb2
Pakage rename (#1844)
* Rename package from fbprophet to prophet, and add shim

* Untrack files that should have been ignored

* Update github actions build commands
2021-03-21 14:13:50 -07:00
Cuong Duong
16472a5700
Upgrade CmdStanPy interface (#1849)
* cmdstan variable extraction update

* add backwards compatibility

* Fix bug

* Upgrade stan version in requirements and in CI testing

Co-authored-by: Ben Letham <bletham@gmail.com>
2021-03-20 10:59:58 -07:00
Cuong Duong
8ffa0e02a6
use builtin int and float (#1850) 2021-03-20 10:50:14 -07:00
loulo1
fc8fa49aac Fix the issue #1814
I did as PyStanBackend. And now when we use the method fit of Prophet, we can do like in the documentation:

https://facebook.github.io/prophet/docs/additional_topics.html#updating-fitted-models

def stan_init(m):
    """Retrieve parameters from a trained model.

    Retrieve parameters from a trained model in the format
    used to initialize a new Stan model.

    Parameters
    ----------
    m: A trained model of the Prophet class.

    Returns
    -------
    A Dictionary containing retrieved parameters of m.

    """
    res = {}
    for pname in ['k', 'm', 'sigma_obs']:
        res[pname] = m.params[pname][0][0]
    for pname in ['delta', 'beta']:
        res[pname] = m.params[pname][0]
    return res

df = pd.read_csv('../examples/example_wp_log_peyton_manning.csv')
df1 = df.loc[df['ds'] < '2016-01-19', :]  # All data except the last day
m1 = Prophet().fit(df1) # A model fit to all data except the last day

%timeit m2 = Prophet().fit(df)  # Adding the last day, fitting from scratch
%timeit m2 = Prophet().fit(df, init=stan_init(m1))  # Adding the last day, warm-starting from m1

Update models.py

Update models.py

Update models.py

Update models.py

Update models.py

Update models.py

Update models.py

Test

Test2

Test4

Test4

Test are fixed
2021-03-09 15:05:57 +01:00
Ben Letham
8882c6a3e3 Use pathlib to load model file (#1835) 2021-03-05 09:55:35 -08:00
Ben Letham
49a89d2a4e Bump version in unit test 2021-03-04 20:12:34 -08:00
Ben Letham
612934695b Version bump 2021-03-04 17:16:23 -08:00
Ben Letham
eb6b8f60ec Enable cross validation on a deserialized model (#1709) 2021-03-03 18:40:27 -08:00
Ben Letham
bbc44bf67c Add test for backwards compatibility with v0.7.1 serialized models 2021-03-03 18:14:16 -08:00
Ben Letham
a1803a8801 Minor rearrange 2021-03-03 18:09:59 -08:00
Ben Letham
74b21f7cd9 Error for unrecognized options in StanBackend.set_options 2021-03-03 18:04:15 -08:00
Ben Letham
f123a1a7cc Fix holidays NA handling 2021-03-03 16:06:25 -08:00
Ben Letham
2e9f831474 Check for NAs in holiday dataframe 2021-03-03 15:43:49 -08:00
Ben Letham
29f14172f0 Handle numpy fit_kwargs when serializing (#1701) 2021-03-03 15:23:12 -08:00
Ben Letham
9e4e87af9b Make sure y_scale is not numpy float (#1824) 2021-03-03 14:52:08 -08:00
Nodar Okroshiashvili
ad2de1e69d
Add Georgian holidays (#1827)
* Update gitignore

* Add Georgian holidays
2021-03-01 17:25:03 -08:00
Luke Scales
9bc7fb77b5
Added optional colour to plot_cross_validation_metric (#1758)
* Added optional colour to plot_cross_validation_metric to facilitate the comparison of different model's performance on the one plot

* use color

Change from colour to color for consistency.

Co-authored-by: Ben Letham <bletham@gmail.com>
2021-01-07 10:50:18 -08:00
Devdutt Shenoi
20f590b726
[python] code quality improvements (#1745)
* Add DeepSource config

* Simplify if statement

* Refactor use of dict() with empty literal

* Use set comprehension syntax

* Refactor chained comparison

* Rewrite instances of list literal within set() as set literals

* Add test_slow to class definition
2020-12-08 15:35:54 -08:00
Aziz Alto
ee592451f2
Fix "UserWarning" in model.plot_components (#1732)
See the issue https://github.com/facebook/prophet/issues/1721
2020-11-10 11:21:23 -08:00
Sharon Woo
4f34de0363
'Added checks to cutoffs and error messages if checks fail using ValueError. Fixed earlier bug' (#1718)
* Update error message: Dataframe has no rows #1650, added err msgs

* Added error messages and checks for cutoffs"
2020-11-06 21:46:01 -08:00
Pawel Kranzberg
97bb057de4
Update performance_metrics() in diagnostics.py (#1710)
* Update performance_metrics() in diagnostics.py

Include smape as a valid metric.
Add support for monthly horizons.

* Update performance_metrics() docstring

* Update performance_metrics() docstring

* Include smape in test_diagnostics.py

* sMAPE code formatting improvement
2020-11-06 21:29:32 -08:00
Greg Rafferty
0a33f381ba
X axis labels in plot_seasonality (#1707)
* changed x-axis format in plot_seasonality

* changed x-axis format in plot_seasonality
2020-11-06 21:20:59 -08:00
fbonaita
3a17402585
Tqdm flag (#1706)
* add disable_tqdm flag to diagnostics.py

* add comment to cross_validation()

* Replace boolean comparison operator

Co-authored-by: Marius Theiss <justusbersten@gmail.com>

* Fix indentation

* Restore original indentation

Co-authored-by: Filippo Bonaita <filippo.bonaita@corp.badoo.com>
Co-authored-by: Marius Theiss <justusbersten@gmail.com>
2020-11-06 21:02:54 -08:00
quant9
e41ed25646
add option to disable Newton fallback via set_options method (#1702) 2020-10-08 11:13:21 -07:00
Ben Letham
3a436ec603 Update holidays version requirement, for TR 2020-09-03 17:09:24 -07:00
Ben Letham
5faacc9fd5 Update serialize test with version change 2020-09-03 16:51:00 -07:00
Ben Letham
cb966a5244 Fix issue with holidays in some years 2020-09-03 16:47:22 -07:00
Sean Taylor
838c72fb85 Split test into fast and slow part 2020-09-02 17:38:20 -07:00
Ben Letham
96848bcc92 Fix test for python38 2020-09-02 16:34:18 -07:00
Ben Letham
2061f251f8 Clean up script for R holidays, and regenerate 2020-08-27 18:36:18 -07:00
Greg Rafferty
3d0bb6e081
fix for comma-separated holidays (#1638)
* use holidays.get_list() to return list of holidays

* make_holidays_df now accepts states
2020-08-27 17:49:19 -07:00
Ben Letham
181933b948 Change dataset for flat growth test 2020-08-24 09:17:29 -07:00
Ben Letham
ffedaa4eed Add new test file to manifest 2020-08-19 19:50:33 -07:00
Ben Letham
fb82a6a43d Minor docstring updates 2020-08-18 13:04:39 -07:00
Ben Letham
0d0f508cf1 Add test for deserialize backwards compatibility 2020-08-18 12:34:47 -07:00
Ben Letham
9084506968 Bump pandas requirement for deserialize 2020-08-17 18:38:11 -07:00
Ben Letham
a88f6458ad Fix test issues 2020-08-17 18:36:29 -07:00
Ben Letham
ccde3a498f version bump 2020-08-17 17:43:55 -07:00
Ben Letham
9fb8f103d6 Minor simplification to weekly plotting logic 2020-08-17 17:40:01 -07:00
Ben Letham
2049217471 Use y_scale in coefficient utility 2020-08-17 17:25:55 -07:00
Ben Letham
a519043f1b Fix bug in changepoint handling in prophet_copy (#1529) 2020-08-17 16:24:34 -07:00