add some stuff #7
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request introduces several enhancements and clarifications to the Farseer repository, with a focus on improving support and documentation for conditional seasonalities, floor parameters, and model serialization. The changes span user-facing documentation, Python and Rust APIs, and internal data structures, ensuring consistency and feature completeness across the stack.
Key highlights:
Documentation and Contributor Guidance
.github/copilot-instructions.mdto detail repository conventions, scaling logic, regressor standardization, floor parameter handling, conditional seasonalities, model estimation, serialization limitations, and testing practices. This provides a comprehensive reference for contributors and automated coding assistants.Conditional Seasonality Support
farseer/__init__.py): Added acondition_nameparameter toadd_seasonality, with updated docstrings and method signature to allow specifying conditional seasonalities. [1] [2]src/core/model.rs,src/core/data.rs):SeasonalityConfigstruct now includes an optionalcondition_namefield, with builder methodwith_condition. [1] [2] [3]TimeSeriesDatastruct now includes aconditionsfield and methods for adding condition columns, supporting boolean masks for conditional seasonalities. [1] [2] [3]Floor Parameter and Data Structure Enhancements
TimeSeriesDatastruct now includes an optionalfloorfield and awith_floormethod, supporting logistic growth with saturating minimum and aligning with Prophet's behavior. [1] [2]Model Serialization and Deserialization
from_jsonclass method toFarseerfor deserializing models from JSON strings, with explicit documentation of the PyO3 limitation (loaded models require pandas DataFrames for prediction).Testing and Pre-commit Improvements
add_seasonalitysignature withcondition_nameparameter, ensuring test coverage for additive/multiplicative/conditional seasonalities. [1] [2] [3] [4] [5] [6].ipynbfiles, reducing noise in notebook-based workflows.