diff --git a/.gitignore b/.gitignore index 5ebecd8d..0e23f40d 100755 --- a/.gitignore +++ b/.gitignore @@ -40,3 +40,4 @@ pip-wheel-metadata catboost_info/ sysidentpy.code-workspace examples/data/ +raw.githubusercontent.com/ diff --git a/docs/community-support/community-overview.md b/docs/community-support/community-overview.md new file mode 100644 index 00000000..1d2a86be --- /dev/null +++ b/docs/community-support/community-overview.md @@ -0,0 +1,19 @@ +--- +template: overrides/main.html +title: Contribute +--- + +
+
+ +

💬 Get Help

+
+

Need assistance? Explore various options for getting help, including discussion forums, GitHub issues, and community support channels.

+
+
+ +

🤝 Meetups

+
+

Connect with other SysIdentPy users through meetups, online events, and community discussions. Stay updated on upcoming gatherings and share your experience.

+
+
diff --git a/docs/community_support/get-help.md b/docs/community-support/get-help.md similarity index 100% rename from docs/community_support/get-help.md rename to docs/community-support/get-help.md diff --git a/docs/community_support/meetups/ai-networks-meetup.md b/docs/community-support/meetups/ai-networks-meetup.md similarity index 100% rename from docs/community_support/meetups/ai-networks-meetup.md rename to docs/community-support/meetups/ai-networks-meetup.md diff --git a/docs/community_support/meetups/estatidados.md b/docs/community-support/meetups/estatidados.md similarity index 100% rename from docs/community_support/meetups/estatidados.md rename to docs/community-support/meetups/estatidados.md diff --git a/docs/community_support/meetups/gcom-meetup.md b/docs/community-support/meetups/gcom-meetup.md similarity index 100% rename from docs/community_support/meetups/gcom-meetup.md rename to docs/community-support/meetups/gcom-meetup.md diff --git a/docs/community_support/meetups/nubank-meetup-open-source.md b/docs/community-support/meetups/nubank-meetup-open-source.md similarity index 100% rename from docs/community_support/meetups/nubank-meetup-open-source.md rename to docs/community-support/meetups/nubank-meetup-open-source.md diff --git a/docs/community_support/meetups/nubank-meetup.md b/docs/community-support/meetups/nubank-meetup.md similarity index 100% rename from docs/community_support/meetups/nubank-meetup.md rename to docs/community-support/meetups/nubank-meetup.md diff --git a/docs/community_support/meetups/meetup.md b/docs/community_support/meetups/meetup.md deleted file mode 100644 index a43ffd0b..00000000 --- a/docs/community_support/meetups/meetup.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -template: overrides/main.html -title: Contribute ---- - -# By the Community, For the Community - -Events that gave the opportunity for SysIdentPy community members to share their expertise, new methods/concepts, cool projects, and, more generally, their experiences and inspirations. \ No newline at end of file diff --git a/docs/developer_guide/contribute.md b/docs/developer-guide/contribute.md similarity index 100% rename from docs/developer_guide/contribute.md rename to docs/developer-guide/contribute.md diff --git a/docs/developer_guide/documentation-overview.md b/docs/developer-guide/documentation-overview.md similarity index 100% rename from docs/developer_guide/documentation-overview.md rename to docs/developer-guide/documentation-overview.md diff --git a/docs/developer_guide/how-to-write-a-how-to-guide.md b/docs/developer-guide/how-to-write-a-how-to-guide.md similarity index 100% rename from docs/developer_guide/how-to-write-a-how-to-guide.md rename to docs/developer-guide/how-to-write-a-how-to-guide.md diff --git a/docs/developer_guide/how-to-write-a-tutorial.md b/docs/developer-guide/how-to-write-a-tutorial.md similarity index 100% rename from docs/developer_guide/how-to-write-a-tutorial.md rename to docs/developer-guide/how-to-write-a-tutorial.md diff --git a/docs/getting_started/getting-started.md b/docs/getting-started/getting-started.md similarity index 89% rename from docs/getting_started/getting-started.md rename to docs/getting-started/getting-started.md index 9ac13011..137baa1d 100644 --- a/docs/getting_started/getting-started.md +++ b/docs/getting-started/getting-started.md @@ -24,7 +24,7 @@ Welcome to SysIdentPy's documentation! Learn how to get started with SysIdentPy This book provides in-depth guidance to support your work with SysIdentPy.

- 🛠️ You can also explore the tutorials in the documentation for practical, hands-on examples. + 🛠️ You can also explore the tutorials in the documentation for practical, hands-on examples.

@@ -103,49 +103,49 @@ the help box. Install with:
- +

🧩 NARMAX Philosophy

Build variations like NARX, NAR, ARMA, NFIR, and more.

- +

📝 Model Structure Selection

Use methods like FROLS, MetaMSS, and combinations with parameter estimation techniques.

- +

🔗 Basis Function

Choose from 8+ basis functions, combining linear and nonlinear types for custom NARMAX models.

- +

🎯 Parameter Estimation

Over 15 parameter estimation methods for exploring various structure selection scenarios.

- +

⚖️ Multiobjective Estimation

Minimize different objective functions using affine information for parameter estimation.

- +

🔄 Model Simulation

Reproduce paper results easily with SimulateNARMAX. Test and compare published models effortlessly.

- +

🤖 Neural NARX (PyTorch)

Integrate with PyTorch for custom neural NARX architectures using all PyTorch optimizers and loss functions.

- +

🛠️ General Estimators

Compatible with scikit-learn, Catboost, and more for creating NARMAX models.

@@ -158,22 +158,22 @@ the help box. Install with: diff --git a/docs/getting_started/license.md b/docs/getting-started/license.md similarity index 100% rename from docs/getting_started/license.md rename to docs/getting-started/license.md diff --git a/docs/getting_started/narmax-intro.md b/docs/getting-started/narmax-intro.md similarity index 100% rename from docs/getting_started/narmax-intro.md rename to docs/getting-started/narmax-intro.md diff --git a/docs/getting_started/quickstart-guide.md b/docs/getting-started/quickstart-guide.md similarity index 99% rename from docs/getting_started/quickstart-guide.md rename to docs/getting-started/quickstart-guide.md index b4c5f251..c8c8be68 100644 --- a/docs/getting_started/quickstart-guide.md +++ b/docs/getting-started/quickstart-guide.md @@ -103,7 +103,7 @@ As you can see, SysIdentPy supports numerous model combinations, each tailored t This book provides in-depth guidance to support your work with SysIdentPy.

- 🛠️ You can also explore the tutorials in the documentation for practical, hands-on examples. + 🛠️ You can also explore the tutorials in the documentation for practical, hands-on examples.

diff --git a/docs/user_guide/API/aols.md b/docs/user-guide/API/aols.md similarity index 100% rename from docs/user_guide/API/aols.md rename to docs/user-guide/API/aols.md diff --git a/docs/user_guide/API/basis-function.md b/docs/user-guide/API/basis-function.md similarity index 100% rename from docs/user_guide/API/basis-function.md rename to docs/user-guide/API/basis-function.md diff --git a/docs/user_guide/API/entropic-regression.md b/docs/user-guide/API/entropic-regression.md similarity index 100% rename from docs/user_guide/API/entropic-regression.md rename to docs/user-guide/API/entropic-regression.md diff --git a/docs/user_guide/API/frols.md b/docs/user-guide/API/frols.md similarity index 100% rename from docs/user_guide/API/frols.md rename to docs/user-guide/API/frols.md diff --git a/docs/user_guide/API/general-estimators.md b/docs/user-guide/API/general-estimators.md similarity index 100% rename from docs/user_guide/API/general-estimators.md rename to docs/user-guide/API/general-estimators.md diff --git a/docs/user_guide/API/metaheuristics.md b/docs/user-guide/API/metaheuristics.md similarity index 100% rename from docs/user_guide/API/metaheuristics.md rename to docs/user-guide/API/metaheuristics.md diff --git a/docs/user_guide/API/metamss.md b/docs/user-guide/API/metamss.md similarity index 100% rename from docs/user_guide/API/metamss.md rename to docs/user-guide/API/metamss.md diff --git a/docs/user_guide/API/metrics.md b/docs/user-guide/API/metrics.md similarity index 100% rename from docs/user_guide/API/metrics.md rename to docs/user-guide/API/metrics.md diff --git a/docs/user_guide/API/multiobjective-parameter-estimation.md b/docs/user-guide/API/multiobjective-parameter-estimation.md similarity index 100% rename from docs/user_guide/API/multiobjective-parameter-estimation.md rename to docs/user-guide/API/multiobjective-parameter-estimation.md diff --git a/docs/user_guide/API/narmax-base.md b/docs/user-guide/API/narmax-base.md similarity index 100% rename from docs/user_guide/API/narmax-base.md rename to docs/user-guide/API/narmax-base.md diff --git a/docs/user_guide/API/neural-narx.md b/docs/user-guide/API/neural-narx.md similarity index 100% rename from docs/user_guide/API/neural-narx.md rename to docs/user-guide/API/neural-narx.md diff --git a/docs/user_guide/API/parameter-estimation.md b/docs/user-guide/API/parameter-estimation.md similarity index 100% rename from docs/user_guide/API/parameter-estimation.md rename to docs/user-guide/API/parameter-estimation.md diff --git a/docs/user_guide/API/residues.md b/docs/user-guide/API/residues.md similarity index 100% rename from docs/user_guide/API/residues.md rename to docs/user-guide/API/residues.md diff --git a/docs/user_guide/API/simulation.md b/docs/user-guide/API/simulation.md similarity index 100% rename from docs/user_guide/API/simulation.md rename to docs/user-guide/API/simulation.md diff --git a/docs/user_guide/API/utils.md b/docs/user-guide/API/utils.md similarity index 100% rename from docs/user_guide/API/utils.md rename to docs/user-guide/API/utils.md diff --git a/docs/user_guide/how_to/create-a-narx-neural-network.ipynb b/docs/user-guide/how-to/create-a-narx-neural-network.ipynb similarity index 100% rename from docs/user_guide/how_to/create-a-narx-neural-network.ipynb rename to docs/user-guide/how-to/create-a-narx-neural-network.ipynb diff --git a/docs/user_guide/how_to/save-and-load-models.ipynb b/docs/user-guide/how-to/save-and-load-models.ipynb similarity index 100% rename from docs/user_guide/how_to/save-and-load-models.ipynb rename to docs/user-guide/how-to/save-and-load-models.ipynb diff --git a/docs/user_guide/how_to/set-specific-lags.ipynb b/docs/user-guide/how-to/set-specific-lags.ipynb similarity index 100% rename from docs/user_guide/how_to/set-specific-lags.ipynb rename to docs/user-guide/how-to/set-specific-lags.ipynb diff --git a/docs/user_guide/how_to/simulating-existing-models.ipynb b/docs/user-guide/how-to/simulating-existing-models.ipynb similarity index 100% rename from docs/user_guide/how_to/simulating-existing-models.ipynb rename to docs/user-guide/how-to/simulating-existing-models.ipynb diff --git a/docs/user_guide/how_to/use-extended-least-squares.ipynb b/docs/user-guide/how-to/use-extended-least-squares.ipynb similarity index 100% rename from docs/user_guide/how_to/use-extended-least-squares.ipynb rename to docs/user-guide/how-to/use-extended-least-squares.ipynb diff --git a/docs/user_guide/overview.md b/docs/user-guide/overview.md similarity index 100% rename from docs/user_guide/overview.md rename to docs/user-guide/overview.md diff --git a/docs/user_guide/tutorials/NFIR-model-overview.ipynb b/docs/user-guide/tutorials/NFIR-model-overview.ipynb similarity index 100% rename from docs/user_guide/tutorials/NFIR-model-overview.ipynb rename to docs/user-guide/tutorials/NFIR-model-overview.ipynb diff --git a/docs/user_guide/tutorials/PV-forecasting-benchmark.ipynb b/docs/user-guide/tutorials/PV-forecasting-benchmark.ipynb similarity index 100% rename from docs/user_guide/tutorials/PV-forecasting-benchmark.ipynb rename to docs/user-guide/tutorials/PV-forecasting-benchmark.ipynb diff --git a/docs/user_guide/tutorials/air-passenger-benchmark.ipynb b/docs/user-guide/tutorials/air-passenger-benchmark.ipynb similarity index 100% rename from docs/user_guide/tutorials/air-passenger-benchmark.ipynb rename to docs/user-guide/tutorials/air-passenger-benchmark.ipynb diff --git a/docs/user_guide/tutorials/aols-overview.ipynb b/docs/user-guide/tutorials/aols-overview.ipynb similarity index 100% rename from docs/user_guide/tutorials/aols-overview.ipynb rename to docs/user-guide/tutorials/aols-overview.ipynb diff --git a/docs/user_guide/tutorials/basis-function-overview.ipynb b/docs/user-guide/tutorials/basis-function-overview.ipynb similarity index 100% rename from docs/user_guide/tutorials/basis-function-overview.ipynb rename to docs/user-guide/tutorials/basis-function-overview.ipynb diff --git a/docs/user_guide/tutorials/coupled-eletric-device.ipynb b/docs/user-guide/tutorials/coupled-eletric-device.ipynb similarity index 100% rename from docs/user_guide/tutorials/coupled-eletric-device.ipynb rename to docs/user-guide/tutorials/coupled-eletric-device.ipynb diff --git a/docs/user_guide/tutorials/electromechanical-system-identification-entropic-regression.ipynb b/docs/user-guide/tutorials/electromechanical-system-identification-entropic-regression.ipynb similarity index 100% rename from docs/user_guide/tutorials/electromechanical-system-identification-entropic-regression.ipynb rename to docs/user-guide/tutorials/electromechanical-system-identification-entropic-regression.ipynb diff --git a/docs/user_guide/tutorials/electromechanical-system-identification-metamss.ipynb b/docs/user-guide/tutorials/electromechanical-system-identification-metamss.ipynb similarity index 100% rename from docs/user_guide/tutorials/electromechanical-system-identification-metamss.ipynb rename to docs/user-guide/tutorials/electromechanical-system-identification-metamss.ipynb diff --git a/docs/user_guide/tutorials/electromechanical-system-identification-overview.ipynb b/docs/user-guide/tutorials/electromechanical-system-identification-overview.ipynb similarity index 100% rename from docs/user_guide/tutorials/electromechanical-system-identification-overview.ipynb rename to docs/user-guide/tutorials/electromechanical-system-identification-overview.ipynb diff --git a/docs/user_guide/tutorials/f-16-aircraft-n-steps-ahead-prediction.ipynb b/docs/user-guide/tutorials/f-16-aircraft-n-steps-ahead-prediction.ipynb similarity index 100% rename from docs/user_guide/tutorials/f-16-aircraft-n-steps-ahead-prediction.ipynb rename to docs/user-guide/tutorials/f-16-aircraft-n-steps-ahead-prediction.ipynb diff --git a/docs/user_guide/tutorials/f-16-aircraft.ipynb b/docs/user-guide/tutorials/f-16-aircraft.ipynb similarity index 100% rename from docs/user_guide/tutorials/f-16-aircraft.ipynb rename to docs/user-guide/tutorials/f-16-aircraft.ipynb diff --git a/docs/user_guide/tutorials/fourier-NARX-overview.ipynb b/docs/user-guide/tutorials/fourier-NARX-overview.ipynb similarity index 100% rename from docs/user_guide/tutorials/fourier-NARX-overview.ipynb rename to docs/user-guide/tutorials/fourier-NARX-overview.ipynb diff --git a/docs/user_guide/tutorials/general-NARX-models.ipynb b/docs/user-guide/tutorials/general-NARX-models.ipynb similarity index 100% rename from docs/user_guide/tutorials/general-NARX-models.ipynb rename to docs/user-guide/tutorials/general-NARX-models.ipynb diff --git a/docs/user_guide/tutorials/importance-of-extended-least-squares.ipynb b/docs/user-guide/tutorials/importance-of-extended-least-squares.ipynb similarity index 100% rename from docs/user_guide/tutorials/importance-of-extended-least-squares.ipynb rename to docs/user-guide/tutorials/importance-of-extended-least-squares.ipynb diff --git a/docs/user_guide/tutorials/information-criteria-overview.ipynb b/docs/user-guide/tutorials/information-criteria-overview.ipynb similarity index 100% rename from docs/user_guide/tutorials/information-criteria-overview.ipynb rename to docs/user-guide/tutorials/information-criteria-overview.ipynb diff --git a/docs/user_guide/tutorials/load-forecasting-benchmark.ipynb b/docs/user-guide/tutorials/load-forecasting-benchmark.ipynb similarity index 100% rename from docs/user_guide/tutorials/load-forecasting-benchmark.ipynb rename to docs/user-guide/tutorials/load-forecasting-benchmark.ipynb diff --git a/docs/user_guide/tutorials/m4-benchmark.ipynb b/docs/user-guide/tutorials/m4-benchmark.ipynb similarity index 100% rename from docs/user_guide/tutorials/m4-benchmark.ipynb rename to docs/user-guide/tutorials/m4-benchmark.ipynb diff --git a/docs/user_guide/tutorials/model-with-multiple-inputs.ipynb b/docs/user-guide/tutorials/model-with-multiple-inputs.ipynb similarity index 100% rename from docs/user_guide/tutorials/model-with-multiple-inputs.ipynb rename to docs/user-guide/tutorials/model-with-multiple-inputs.ipynb diff --git a/docs/user_guide/tutorials/modeling-a-magneto-rheological-damper-device.ipynb b/docs/user-guide/tutorials/modeling-a-magneto-rheological-damper-device.ipynb similarity index 100% rename from docs/user_guide/tutorials/modeling-a-magneto-rheological-damper-device.ipynb rename to docs/user-guide/tutorials/modeling-a-magneto-rheological-damper-device.ipynb diff --git a/docs/user_guide/tutorials/multiobjective-parameter-estimation-overview.ipynb b/docs/user-guide/tutorials/multiobjective-parameter-estimation-overview.ipynb similarity index 100% rename from docs/user_guide/tutorials/multiobjective-parameter-estimation-overview.ipynb rename to docs/user-guide/tutorials/multiobjective-parameter-estimation-overview.ipynb diff --git a/docs/user_guide/tutorials/parameter-estimation-overview.ipynb b/docs/user-guide/tutorials/parameter-estimation-overview.ipynb similarity index 100% rename from docs/user_guide/tutorials/parameter-estimation-overview.ipynb rename to docs/user-guide/tutorials/parameter-estimation-overview.ipynb diff --git a/docs/user_guide/tutorials/silver-box-system.ipynb b/docs/user-guide/tutorials/silver-box-system.ipynb similarity index 100% rename from docs/user_guide/tutorials/silver-box-system.ipynb rename to docs/user-guide/tutorials/silver-box-system.ipynb diff --git a/docs/user_guide/tutorials/wiener-hammerstein-system.ipynb b/docs/user-guide/tutorials/wiener-hammerstein-system.ipynb similarity index 100% rename from docs/user_guide/tutorials/wiener-hammerstein-system.ipynb rename to docs/user-guide/tutorials/wiener-hammerstein-system.ipynb diff --git a/docs/user_guide/tutorials/your-first-model.ipynb b/docs/user-guide/tutorials/your-first-model.ipynb similarity index 100% rename from docs/user_guide/tutorials/your-first-model.ipynb rename to docs/user-guide/tutorials/your-first-model.ipynb diff --git a/mkdocs.yml b/mkdocs.yml index a677eb8b..33d7db5d 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -149,62 +149,62 @@ markdown_extensions: nav: - Home: index.md - Getting started: - - Overview: getting_started/getting-started.md - - Quickstart Guide: getting_started/quickstart-guide.md - - Introduction to NARMAX: getting_started/narmax-intro.md - - License: getting_started/license.md + - Overview: getting-started/getting-started.md + - Quickstart Guide: getting-started/quickstart-guide.md + - Introduction to NARMAX: getting-started/narmax-intro.md + - License: getting-started/license.md - User guide: - - Overview: user_guide/overview.md + - Overview: user-guide/overview.md - Tutorials: - Features: - - your-first-model: user_guide/tutorials/your-first-model.ipynb - - model-with-multiple-inputs: user_guide/tutorials/model-with-multiple-inputs.ipynb - - parameter-estimation-overview: user_guide/tutorials/parameter-estimation-overview.ipynb - - basis-function-overview: user_guide/tutorials/basis-function-overview.ipynb - - information-criteria-overview: user_guide/tutorials/information-criteria-overview.ipynb - - general-NARX-models: user_guide/tutorials/general-NARX-models.ipynb - - fourier-NARX-overview: user_guide/tutorials/fourier-NARX-overview.ipynb - - aols-overview: user_guide/tutorials/aols-overview.ipynb - - nfir-model-overview: user_guide/tutorials/NFIR-model-overview.ipynb - - importance-of-extended-least-squares: user_guide/tutorials/importance-of-extended-least-squares.ipynb + - your-first-model: user-guide/tutorials/your-first-model.ipynb + - model-with-multiple-inputs: user-guide/tutorials/model-with-multiple-inputs.ipynb + - parameter-estimation-overview: user-guide/tutorials/parameter-estimation-overview.ipynb + - basis-function-overview: user-guide/tutorials/basis-function-overview.ipynb + - information-criteria-overview: user-guide/tutorials/information-criteria-overview.ipynb + - general-NARX-models: user-guide/tutorials/general-NARX-models.ipynb + - fourier-NARX-overview: user-guide/tutorials/fourier-NARX-overview.ipynb + - aols-overview: user-guide/tutorials/aols-overview.ipynb + - nfir-model-overview: user-guide/tutorials/NFIR-model-overview.ipynb + - importance-of-extended-least-squares: user-guide/tutorials/importance-of-extended-least-squares.ipynb - Electrical and Mechanical Systems: - - modeling-a-magneto-rheological-damper-device: user_guide/tutorials/modeling-a-magneto-rheological-damper-device.ipynb - - silver-box-system: user_guide/tutorials/silver-box-system.ipynb - - coupled-eletric-device: user_guide/tutorials/coupled-eletric-device.ipynb - - wiener-hammerstein-system: user_guide/tutorials/wiener-hammerstein-system.ipynb - - f16-aircraft: user_guide/tutorials/f-16-aircraft.ipynb - - f-16-aircraft-n-steps-ahead-prediction: user_guide/tutorials/f-16-aircraft-n-steps-ahead-prediction.ipynb - - electromechanical-system-identification-overview: user_guide/tutorials/electromechanical-system-identification-overview.ipynb - - electromechanical-system-identification-metamss: user_guide/tutorials/electromechanical-system-identification-metamss.ipynb - - electromechanical-system-identification-entropic-regression: user_guide/tutorials/electromechanical-system-identification-entropic-regression.ipynb - - multiobjective-parameter-estimation-overview: user_guide/tutorials/multiobjective-parameter-estimation-overview.ipynb + - modeling-a-magneto-rheological-damper-device: user-guide/tutorials/modeling-a-magneto-rheological-damper-device.ipynb + - silver-box-system: user-guide/tutorials/silver-box-system.ipynb + - coupled-eletric-device: user-guide/tutorials/coupled-eletric-device.ipynb + - wiener-hammerstein-system: user-guide/tutorials/wiener-hammerstein-system.ipynb + - f16-aircraft: user-guide/tutorials/f-16-aircraft.ipynb + - f-16-aircraft-n-steps-ahead-prediction: user-guide/tutorials/f-16-aircraft-n-steps-ahead-prediction.ipynb + - electromechanical-system-identification-overview: user-guide/tutorials/electromechanical-system-identification-overview.ipynb + - electromechanical-system-identification-metamss: user-guide/tutorials/electromechanical-system-identification-metamss.ipynb + - electromechanical-system-identification-entropic-regression: user-guide/tutorials/electromechanical-system-identification-entropic-regression.ipynb + - multiobjective-parameter-estimation-overview: user-guide/tutorials/multiobjective-parameter-estimation-overview.ipynb - Industrial and Corporate: - - m4-benchmark: user_guide/tutorials/m4-benchmark.ipynb - - air-passenger-benchmark: user_guide/tutorials/air-passenger-benchmark.ipynb - - load-forecasting-benchmark: user_guide/tutorials/load-forecasting-benchmark.ipynb - - pv-forecasting-benchmark: user_guide/tutorials/PV-forecasting-benchmark.ipynb + - m4-benchmark: user-guide/tutorials/m4-benchmark.ipynb + - air-passenger-benchmark: user-guide/tutorials/air-passenger-benchmark.ipynb + - load-forecasting-benchmark: user-guide/tutorials/load-forecasting-benchmark.ipynb + - pv-forecasting-benchmark: user-guide/tutorials/PV-forecasting-benchmark.ipynb - How to: - - create-a-narx-neural-network: user_guide/how_to/create-a-narx-neural-network.ipynb - - save-and-load-models: user_guide/how_to/save-and-load-models.ipynb - - set-specific-lags: user_guide/how_to/set-specific-lags.ipynb - - simulating-existing-models: user_guide/how_to/simulating-existing-models.ipynb - - use-extended-least-squares: user_guide/how_to/use-extended-least-squares.ipynb + - create-a-narx-neural-network: user-guide/how-to/create-a-narx-neural-network.ipynb + - save-and-load-models: user-guide/how-to/save-and-load-models.ipynb + - set-specific-lags: user-guide/how-to/set-specific-lags.ipynb + - simulating-existing-models: user-guide/how-to/simulating-existing-models.ipynb + - use-extended-least-squares: user-guide/how-to/use-extended-least-squares.ipynb - API: - - NARMAX Base: user_guide/API/narmax-base.md - - Basis Functions: user_guide/API/basis-function.md - - FROLS: user_guide/API/frols.md - - MetaMSS: user_guide/API/metamss.md - - AOLS: user_guide/API/aols.md - - Entropic Regression: user_guide/API/entropic-regression.md - - Neural NARX: user_guide/API/neural-narx.md - - General Estimators: user_guide/API/general-estimators.md - - Parameter Estimation: user_guide/API/parameter-estimation.md - - Multiobjective Parameter Estimation: user_guide/API/multiobjective-parameter-estimation.md - - Simulation: user_guide/API/simulation.md - - Residual Analysis: user_guide/API/residues.md - - Metaheuristics: user_guide/API/metaheuristics.md - - Metrics: user_guide/API/metrics.md - - Utils: user_guide/API/utils.md + - NARMAX Base: user-guide/API/narmax-base.md + - Basis Functions: user-guide/API/basis-function.md + - FROLS: user-guide/API/frols.md + - MetaMSS: user-guide/API/metamss.md + - AOLS: user-guide/API/aols.md + - Entropic Regression: user-guide/API/entropic-regression.md + - Neural NARX: user-guide/API/neural-narx.md + - General Estimators: user-guide/API/general-estimators.md + - Parameter Estimation: user-guide/API/parameter-estimation.md + - Multiobjective Parameter Estimation: user-guide/API/multiobjective-parameter-estimation.md + - Simulation: user-guide/API/simulation.md + - Residual Analysis: user-guide/API/residues.md + - Metaheuristics: user-guide/API/metaheuristics.md + - Metrics: user-guide/API/metrics.md + - Utils: user-guide/API/utils.md - Companion Book: - Preface: book/0-Preface.md - Contents: book/0.1-Contents.md @@ -219,20 +219,20 @@ nav: - 9. Validation: book/9-Validation.md - 10. Case Studies: book/10-Case-Studies.md - Developer guide: - - How to contribute: developer_guide/contribute.md + - How to contribute: developer-guide/contribute.md - Documentation: - - Documentation Overview: developer_guide/documentation-overview.md - - How To Write a Tutorial: developer_guide/how-to-write-a-tutorial.md - - How To Write a How-to Guide: developer_guide/how-to-write-a-how-to-guide.md + - Documentation Overview: developer-guide/documentation-overview.md + - How To Write a Tutorial: developer-guide/how-to-write-a-tutorial.md + - How To Write a How-to Guide: developer-guide/how-to-write-a-how-to-guide.md - Community & Support: - - Get Help: community_support/get-help.md - - Meetups: community_support/meetups/meetup.md + - community-overview: community-support/community-overview.md + - Get Help: community-support/get-help.md - Meetups: - - AI Networks Meetup: community_support/meetups/ai-networks-meetup.md - - Nubank Timeseries Meetup: community_support/meetups/nubank-meetup.md - - Nubank Open Source Talk: community_support/meetups/nubank-meetup-open-source.md - - GCoM Meetup: community_support/meetups/gcom-meetup.md - - Estatidados Meetup: community_support/meetups/estatidados.md + - AI Networks Meetup: community-support/meetups/ai-networks-meetup.md + - Nubank Timeseries Meetup: community-support/meetups/nubank-meetup.md + - Nubank Open Source Talk: community-support/meetups/nubank-meetup-open-source.md + - GCoM Meetup: community-support/meetups/gcom-meetup.md + - Estatidados Meetup: community-support/meetups/estatidados.md - About: landing-page/about-us.md - Changelog: changelog/changelog.md - Sponsors: landing-page/sponsor.md diff --git a/sysidentpy/general_estimators/tests/test_general_narx.py b/sysidentpy/general_estimators/tests/test_general_narx.py index cc3b4e7a..93ae064f 100644 --- a/sysidentpy/general_estimators/tests/test_general_narx.py +++ b/sysidentpy/general_estimators/tests/test_general_narx.py @@ -25,7 +25,9 @@ def create_test_data(n=1000): # y = np.reshape(y, (len(y), 1)) # x = np.reshape(x, (len(x), 1)) # data = np.concatenate([x, y], axis=1) - data = np.loadtxt("examples/datasets/data_for_testing.txt") + data = np.loadtxt( + "https://raw.githubusercontent.com/wilsonrljr/sysidentpy-data/refs/heads/main/datasets/testing/data_for_testing.txt" + ) x = data[:, 0].reshape(-1, 1) y = data[:, 1].reshape(-1, 1) return x, y, theta diff --git a/sysidentpy/model_structure_selection/tests/test_aols.py b/sysidentpy/model_structure_selection/tests/test_aols.py index 1eafbb89..6800c851 100644 --- a/sysidentpy/model_structure_selection/tests/test_aols.py +++ b/sysidentpy/model_structure_selection/tests/test_aols.py @@ -21,7 +21,9 @@ def create_test_data(n=1000): # y = np.reshape(y, (len(y), 1)) # x = np.reshape(x, (len(x), 1)) # data = np.concatenate([x, y], axis=1) - data = np.loadtxt("examples/datasets/data_for_testing.txt") + data = np.loadtxt( + "https://raw.githubusercontent.com/wilsonrljr/sysidentpy-data/refs/heads/main/datasets/testing/data_for_testing.txt" + ) x = data[:, 0].reshape(-1, 1) y = data[:, 1].reshape(-1, 1) return x, y, theta diff --git a/sysidentpy/model_structure_selection/tests/test_er.py b/sysidentpy/model_structure_selection/tests/test_er.py index a31d2129..769ef159 100644 --- a/sysidentpy/model_structure_selection/tests/test_er.py +++ b/sysidentpy/model_structure_selection/tests/test_er.py @@ -16,7 +16,9 @@ def create_test_data(n=1000): # y = np.reshape(y, (len(y), 1)) # x = np.reshape(x, (len(x), 1)) # data = np.concatenate([x, y], axis=1) - data = np.loadtxt("examples/datasets/data_for_testing.txt") + data = np.loadtxt( + "https://raw.githubusercontent.com/wilsonrljr/sysidentpy-data/refs/heads/main/datasets/testing/data_for_testing.txt" + ) x = data[:, 0].reshape(-1, 1) y = data[:, 1].reshape(-1, 1) return x, y, theta diff --git a/sysidentpy/model_structure_selection/tests/test_frols.py b/sysidentpy/model_structure_selection/tests/test_frols.py index 4b1f7cfa..fbc34e07 100644 --- a/sysidentpy/model_structure_selection/tests/test_frols.py +++ b/sysidentpy/model_structure_selection/tests/test_frols.py @@ -22,7 +22,9 @@ def create_test_data(n=1000): # y = np.reshape(y, (len(y), 1)) # x = np.reshape(x, (len(x), 1)) # data = np.concatenate([x, y], axis=1) - data = np.loadtxt("examples/datasets/data_for_testing.txt") + data = np.loadtxt( + "https://raw.githubusercontent.com/wilsonrljr/sysidentpy-data/refs/heads/main/datasets/testing/data_for_testing.txt" + ) x = data[:, 0].reshape(-1, 1) y = data[:, 1].reshape(-1, 1) return x, y, theta diff --git a/sysidentpy/model_structure_selection/tests/test_metamss.py b/sysidentpy/model_structure_selection/tests/test_metamss.py index a9b74ebd..525ffb52 100644 --- a/sysidentpy/model_structure_selection/tests/test_metamss.py +++ b/sysidentpy/model_structure_selection/tests/test_metamss.py @@ -9,7 +9,9 @@ def create_test_data(n=1000): theta = np.array([[0.6], [-0.5], [0.7], [-0.7], [0.2]]) - data = np.loadtxt("examples/datasets/data_for_testing.txt") + data = np.loadtxt( + "https://raw.githubusercontent.com/wilsonrljr/sysidentpy-data/refs/heads/main/datasets/testing/data_for_testing.txt" + ) x = data[:, 0].reshape(-1, 1) y = data[:, 1].reshape(-1, 1) return x, y, theta diff --git a/sysidentpy/multiobjective_parameter_estimation/tests/test_mo_estimators.py b/sysidentpy/multiobjective_parameter_estimation/tests/test_mo_estimators.py index 8e012e4f..c15ddeda 100644 --- a/sysidentpy/multiobjective_parameter_estimation/tests/test_mo_estimators.py +++ b/sysidentpy/multiobjective_parameter_estimation/tests/test_mo_estimators.py @@ -7,10 +7,14 @@ df_train = np.genfromtxt( - "examples/datasets/buck_id.csv", delimiter=",", skip_header=True + "https://raw.githubusercontent.com/wilsonrljr/sysidentpy-data/refs/heads/main/datasets/buck/buck_id.csv", + delimiter=",", + skip_header=True, ) df_valid = np.genfromtxt( - "examples/datasets/buck_valid.csv", delimiter=",", skip_header=True + "https://raw.githubusercontent.com/wilsonrljr/sysidentpy-data/refs/heads/main/datasets/buck/buck_valid.csv", + delimiter=",", + skip_header=True, ) Vd = 24 @@ -26,27 +30,31 @@ y_valid = df_valid[:, 2].reshape(-1, 1) w = set_weights(static_function=True, static_gain=True) -final_model = np.array([ - [0, 0], - [1001, 0], - [1002, 0], - [2001, 0], - [1001, 1001], - [1002, 1001], - [2001, 1001], - [1002, 1002], -]) +final_model = np.array( + [ + [0, 0], + [1001, 0], + [1002, 0], + [2001, 0], + [1001, 1001], + [1002, 1001], + [2001, 1001], + [1002, 1002], + ] +) -final_model = np.array([ - [1001, 0], - [1002, 0], - [2001, 1001], - [0, 0], - [1001, 1001], - [2001, 0], - [1002, 1001], - [1002, 1002], -]) +final_model = np.array( + [ + [1001, 0], + [1002, 0], + [2001, 1001], + [0, 0], + [1001, 1001], + [2001, 0], + [1002, 1001], + [1002, 1002], + ] +) def test_default_values(): @@ -95,98 +103,102 @@ def test_build_static_function_information(): ) # those values were taken from matlab implementation to compare # with this scenario - static_covariance_mat = np.array([ - [ - 1.72408163e04, - 1.72408163e04, - 1.67183673e04, - 8.00000000e02, - 4.17959184e05, - 1.04489796e03, - 4.17959184e05, - 4.17959184e05, - ], - [ - 1.72408163e04, - 1.72408163e04, - 1.67183673e04, - 8.00000000e02, - 4.17959184e05, - 1.04489796e03, - 4.17959184e05, - 4.17959184e05, - ], + static_covariance_mat = np.array( [ - 1.67183673e04, - 1.67183673e04, - 2.67605287e04, - 1.04489796e03, - 3.20903526e05, - 2.08979592e03, - 3.20903526e05, - 3.20903526e05, - ], - [ - 8.00000000e02, - 8.00000000e02, - 1.04489796e03, - 5.00000000e01, - 1.72408163e04, - 1.00000000e02, - 1.72408163e04, - 1.72408163e04, - ], - [ - 4.17959184e05, - 4.17959184e05, - 3.20903526e05, - 1.72408163e04, - 1.08074657e07, - 1.67183673e04, - 1.08074657e07, - 1.08074657e07, - ], - [ - 1.04489796e03, - 1.04489796e03, - 2.08979592e03, - 1.00000000e02, - 1.67183673e04, - 2.69387755e02, - 1.67183673e04, - 1.67183673e04, - ], - [ - 4.17959184e05, - 4.17959184e05, - 3.20903526e05, - 1.72408163e04, - 1.08074657e07, - 1.67183673e04, - 1.08074657e07, - 1.08074657e07, - ], + [ + 1.72408163e04, + 1.72408163e04, + 1.67183673e04, + 8.00000000e02, + 4.17959184e05, + 1.04489796e03, + 4.17959184e05, + 4.17959184e05, + ], + [ + 1.72408163e04, + 1.72408163e04, + 1.67183673e04, + 8.00000000e02, + 4.17959184e05, + 1.04489796e03, + 4.17959184e05, + 4.17959184e05, + ], + [ + 1.67183673e04, + 1.67183673e04, + 2.67605287e04, + 1.04489796e03, + 3.20903526e05, + 2.08979592e03, + 3.20903526e05, + 3.20903526e05, + ], + [ + 8.00000000e02, + 8.00000000e02, + 1.04489796e03, + 5.00000000e01, + 1.72408163e04, + 1.00000000e02, + 1.72408163e04, + 1.72408163e04, + ], + [ + 4.17959184e05, + 4.17959184e05, + 3.20903526e05, + 1.72408163e04, + 1.08074657e07, + 1.67183673e04, + 1.08074657e07, + 1.08074657e07, + ], + [ + 1.04489796e03, + 1.04489796e03, + 2.08979592e03, + 1.00000000e02, + 1.67183673e04, + 2.69387755e02, + 1.67183673e04, + 1.67183673e04, + ], + [ + 4.17959184e05, + 4.17959184e05, + 3.20903526e05, + 1.72408163e04, + 1.08074657e07, + 1.67183673e04, + 1.08074657e07, + 1.08074657e07, + ], + [ + 4.17959184e05, + 4.17959184e05, + 3.20903526e05, + 1.72408163e04, + 1.08074657e07, + 1.67183673e04, + 1.08074657e07, + 1.08074657e07, + ], + ] + ) + static_response_mat = np.array( [ - 4.17959184e05, - 4.17959184e05, - 3.20903526e05, - 1.72408163e04, - 1.08074657e07, - 1.67183673e04, - 1.08074657e07, - 1.08074657e07, - ], - ]) - static_response_mat = np.array([ - [17240.81632653], - [17240.81632653], - [16718.36734694], - [800.0], - [417959.18367347], - [1044.89795918], - [417959.18367347], - [417959.18367347], - ]) + [17240.81632653], + [17240.81632653], + [16718.36734694], + [800.0], + [417959.18367347], + [1044.89795918], + [417959.18367347], + [417959.18367347], + ] + ) assert_allclose(static_covariance_mat, static_covariance) assert_allclose(static_response_mat, static_response) assert_almost_equal(QR.mean(), 136.2933673469388) @@ -200,98 +212,102 @@ def test_build_static_gain_information(): ) # those values were taken from matlab implementation to compare # with this scenario - gain_covariance_mat = np.array([ - [ - 3.20000000e03, - 3.20000000e03, - 2.80000000e03, - 0.00000000e00, - 1.02400000e05, - -4.00000000e02, - 1.02400000e05, - 1.02400000e05, - ], - [ - 3.20000000e03, - 3.20000000e03, - 2.80000000e03, - 0.00000000e00, - 1.02400000e05, - -4.00000000e02, - 1.02400000e05, - 1.02400000e05, - ], - [ - 2.80000000e03, - 2.80000000e03, - 2.45000000e03, - 0.00000000e00, - 8.96000000e04, - -3.50000000e02, - 8.96000000e04, - 8.96000000e04, - ], - [ - 0.00000000e00, - 0.00000000e00, - 0.00000000e00, - 0.00000000e00, - 0.00000000e00, - 0.00000000e00, - 0.00000000e00, - 0.00000000e00, - ], - [ - 1.02400000e05, - 1.02400000e05, - 8.96000000e04, - 0.00000000e00, - 4.41364898e06, - -1.28000000e04, - 4.41364898e06, - 4.41364898e06, - ], + gain_covariance_mat = np.array( [ - -4.00000000e02, - -4.00000000e02, - -3.50000000e02, - 0.00000000e00, - -1.28000000e04, - 5.00000000e01, - -1.28000000e04, - -1.28000000e04, - ], - [ - 1.02400000e05, - 1.02400000e05, - 8.96000000e04, - 0.00000000e00, - 4.41364898e06, - -1.28000000e04, - 4.41364898e06, - 4.41364898e06, - ], + [ + 3.20000000e03, + 3.20000000e03, + 2.80000000e03, + 0.00000000e00, + 1.02400000e05, + -4.00000000e02, + 1.02400000e05, + 1.02400000e05, + ], + [ + 3.20000000e03, + 3.20000000e03, + 2.80000000e03, + 0.00000000e00, + 1.02400000e05, + -4.00000000e02, + 1.02400000e05, + 1.02400000e05, + ], + [ + 2.80000000e03, + 2.80000000e03, + 2.45000000e03, + 0.00000000e00, + 8.96000000e04, + -3.50000000e02, + 8.96000000e04, + 8.96000000e04, + ], + [ + 0.00000000e00, + 0.00000000e00, + 0.00000000e00, + 0.00000000e00, + 0.00000000e00, + 0.00000000e00, + 0.00000000e00, + 0.00000000e00, + ], + [ + 1.02400000e05, + 1.02400000e05, + 8.96000000e04, + 0.00000000e00, + 4.41364898e06, + -1.28000000e04, + 4.41364898e06, + 4.41364898e06, + ], + [ + -4.00000000e02, + -4.00000000e02, + -3.50000000e02, + 0.00000000e00, + -1.28000000e04, + 5.00000000e01, + -1.28000000e04, + -1.28000000e04, + ], + [ + 1.02400000e05, + 1.02400000e05, + 8.96000000e04, + 0.00000000e00, + 4.41364898e06, + -1.28000000e04, + 4.41364898e06, + 4.41364898e06, + ], + [ + 1.02400000e05, + 1.02400000e05, + 8.96000000e04, + 0.00000000e00, + 4.41364898e06, + -1.28000000e04, + 4.41364898e06, + 4.41364898e06, + ], + ] + ) + gain_response_mat = np.array( [ - 1.02400000e05, - 1.02400000e05, - 8.96000000e04, - 0.00000000e00, - 4.41364898e06, - -1.28000000e04, - 4.41364898e06, - 4.41364898e06, - ], - ]) - gain_response_mat = np.array([ - [3200.0], - [3200.0], - [2800.0], - [0.0], - [102400.0], - [-400.0], - [102400.0], - [102400.0], - ]) + [3200.0], + [3200.0], + [2800.0], + [0.0], + [102400.0], + [-400.0], + [102400.0], + [102400.0], + ] + ) assert_allclose(gain_covariance_mat, gain_covariance) assert_allclose(gain_response_mat, gain_response) assert_almost_equal(HR.mean(), -98.75) @@ -303,16 +319,18 @@ def test_estimate(): J, E, theta, _, _, position = mo_estimator.estimate( y=y_train, gain=gain, y_static=Yo, X_static=Uo, X=x_train, weighing_matrix=w ) - expected_theta = np.array([ - [1.54048245], - [0.29686668], - [0.64693309], - [-0.41302211], - [0.27670633], - [-0.53473868], - [0.00406244], - [0.25831577], - ]) + expected_theta = np.array( + [ + [1.54048245], + [0.29686668], + [0.64693309], + [-0.41302211], + [0.27670633], + [-0.53473868], + [0.00406244], + [0.25831577], + ] + ) assert_allclose(expected_theta, theta[position, :].reshape(-1, 1), rtol=1e-05) assert J.shape == (3, 2295) assert E.shape == (2295,) diff --git a/sysidentpy/neural_network/tests/test_narxnn.py b/sysidentpy/neural_network/tests/test_narxnn.py index 1d306781..e70f609b 100644 --- a/sysidentpy/neural_network/tests/test_narxnn.py +++ b/sysidentpy/neural_network/tests/test_narxnn.py @@ -40,7 +40,9 @@ def create_test_data(n=1000): # y = np.reshape(y, (len(y), 1)) # x = np.reshape(x, (len(x), 1)) # data = np.concatenate([x, y], axis=1) - data = np.loadtxt("examples/datasets/data_for_testing.txt") + data = np.loadtxt( + "https://raw.githubusercontent.com/wilsonrljr/sysidentpy-data/refs/heads/main/datasets/testing/data_for_testing.txt" + ) x = data[:, 0].reshape(-1, 1) y = data[:, 1].reshape(-1, 1) return x, y, theta diff --git a/sysidentpy/tests/test_narmax_base.py b/sysidentpy/tests/test_narmax_base.py index 6efe287f..f0cb8a80 100644 --- a/sysidentpy/tests/test_narmax_base.py +++ b/sysidentpy/tests/test_narmax_base.py @@ -37,7 +37,9 @@ def create_test_data(n=1000): # y = np.reshape(y, (len(y), 1)) # x = np.reshape(x, (len(x), 1)) # data = np.concatenate([x, y], axis=1) - data = np.loadtxt("examples/datasets/data_for_testing.txt") + data = np.loadtxt( + "https://raw.githubusercontent.com/wilsonrljr/sysidentpy-data/refs/heads/main/datasets/testing/data_for_testing.txt" + ) x = data[:, 0].reshape(-1, 1) y = data[:, 1].reshape(-1, 1) return x, y, theta