semvec/pypi-packages huggingface dataset:
ExpSmoothing 0.1.9
Exponential smoothing forecast model
Keywords: python,time-series,forecasting,exponential smoothing,error metrics

# Introduction
 A simple introduction to statistical learning in time-series forecasting. This model is a lightweight and easy to understand example of model traning, testing and implementation. The package enables one to build, train and test a time-series forcasting model using the Simple Exponential Smoothing method. 

Learn more here: https://machinelearningmastery.com/exponential-smoothing-for-time-series-forecasting-in-python/ 

# Usage 
Download and run the package on your local system. Python version 3.10.0 or greater is advised.

# Model 
Simple Exponential Smoothing can be interpreted as a weighted sum of the time-series values wherein the weights are exponentially increasing (greater importance to future values in the time-series). The "alpha" value or the smoothing parameter lies between 0 and 1: the alpha value is directly proportional to the exponentially increasing nature of the weights.

Learn more here: https://btsa.medium.com/introduction-to-exponential-smoothing-9c2d5909a714

## Error metrics 
Simply put, training the model involves finding the "alpha" value that minimizes the forecast error (difference between true and forecasted values). In this implementation, one can choose from the following error metrics to obtain the optimal "alpha" value:
| Error (Cost Function) | Parameter | Formula |
| ------------ | ------------------- | --------- |
| Mean Squared Error (MSE) |  ```mean squared error```  | <img src = "https://github.com/akomarla/ExpSmoothing/assets/124313756/a58bc3d7-6661-4995-825d-b031bd62016a" width = "45%" height = "45%"> <tr></tr> |
| Root Mean Squared Error (RMSE) |  ```root mean squared error```  | <img src = "https://github.com/akomarla/ExpSmoothing/assets/124313756/13106816-f256-4e74-ad06-b20470cc6f74" width = "45%" height = "45%"> <tr></tr> |
| Mean Absolute Error (MAE) |  ```mean absolute error```  | <img src = "https://github.com/akomarla/ExpSmoothing/assets/124313756/a5821e63-0020-4fa2-aea7-993ba6c6babe" width = "45%" height = "45%"> <tr></tr> |
| Mean Absolute Percentage Error (MAPE) |  ```mean absolute percentage error```  | <img src = "https://github.com/akomarla/ExpSmoothing/assets/124313756/4825f7e2-f0c6-4396-b27f-2333542f2d84" width = "45%" height = "45%"> <tr></tr> |

Where n represents the number of time-series in the data set. 

<img src = "https://github.com/akomarla/ExpSmoothing/assets/124313756/f5b6b8c5-2d78-4313-be97-f4dd35b8f7ea" width = "7%" height = "7%"> is the difference between the true and forecasted future values of the time-series i in n.

Learn more about the different cost functions here: https://www.analyticsvidhya.com/blog/2021/10/evaluation-metric-for-regression-models/

## Implementation 
This model is trained and tested on the M4 dataset of the Makridakis Time-Series Forecasting Competition: https://github.com/Mcompetitions/M4-methods/tree/master/Dataset (Daily-train.csv and Daily-test.csv) using the mean absolute percentage error metric from the table above. 

# Questions
Contact aparna.komarla@gmail.com with any questions.
mathstropy 4.0.7
Python library with functions to make learning more efficient
Requires Python: >=3.10

# python_exp_learning
This repository contains activities for learning  coding skills in python.


# Getting Started

```
>>> conda env create -f env.yaml
```

```
>>> conda activate mathstropy_env_python_310
```

## For Development
Windows
```
>>> pip install -e .[dev]
```

Mac
```
>>> pip install -e .'[dev]'
```

## For Non-Development Purposes
```
>>> pip install -e
```
appwrite-typing 0.0
Type hints for Appwrite Python SDK

# Type hints for your Appwrite Python functions

Whenever I develop an Appwrite function, I am left wondering what all these Flask abstractions mean since they are not from an installable package. Wonder no more!

```python
from appwrite_typing.py310.server import Context

def main(context: "Context"):  # <-- we actually know what this means now!
    return context.res.send("Hello World!")

def test_main():
    response = main(Context())  # <-- we can actually test with real objects
    assert response["body"] == "Hello World!"
```