machine_learning.forecasting.run

this is code for forecasting but I modified it and used it for safety checker of data for ex: you have an online shop and for some reason some data are missing (the amount of data that u expected are not supposed to be)

then we can use it

*ps1. ofc we can use normal statistic method but in this case

the data is quite absurd and only a little^^

  1. ofc u can use this and modified it for forecasting purpose for the next 3 months sales or something, u can just adjust it for ur own purpose

Attributes

data_input_df

Functions

data_safety_checker(→ bool)

Used to review all the votes (list result prediction)

interquartile_range_checker(→ float)

Optional method: interquatile range

linear_regression_prediction(→ float)

First method: linear regression

sarimax_predictor(→ float)

second method: Sarimax

support_vector_regressor(→ float)

Third method: Support vector regressor

Module Contents

machine_learning.forecasting.run.data_safety_checker(list_vote: list, actual_result: float) bool

Used to review all the votes (list result prediction) and compare it to the actual result. input : list of predictions output : print whether it’s safe or not >>> data_safety_checker([2, 3, 4], 5.0) False

machine_learning.forecasting.run.interquartile_range_checker(train_user: list) float

Optional method: interquatile range input : list of total user in float output : low limit of input in float this method can be used to check whether some data is outlier or not >>> interquartile_range_checker([1,2,3,4,5,6,7,8,9,10]) 2.8

machine_learning.forecasting.run.linear_regression_prediction(train_dt: list, train_usr: list, train_mtch: list, test_dt: list, test_mtch: list) float

First method: linear regression input : training data (date, total_user, total_event) in list of float output : list of total user prediction in float >>> n = linear_regression_prediction([2,3,4,5], [5,3,4,6], [3,1,2,4], [2,1], [2,2]) >>> bool(abs(n - 5.0) < 1e-6) # Checking precision because of floating point errors True

machine_learning.forecasting.run.sarimax_predictor(train_user: list, train_match: list, test_match: list) float

second method: Sarimax sarimax is a statistic method which using previous input and learn its pattern to predict future data input : training data (total_user, with exog data = total_event) in list of float output : list of total user prediction in float >>> sarimax_predictor([4,2,6,8], [3,1,2,4], [2]) 6.6666671111109626

machine_learning.forecasting.run.support_vector_regressor(x_train: list, x_test: list, train_user: list) float

Third method: Support vector regressor svr is quite the same with svm(support vector machine) it uses the same principles as the SVM for classification, with only a few minor differences and the only different is that it suits better for regression purpose input : training data (date, total_user, total_event) in list of float where x = list of set (date and total event) output : list of total user prediction in float >>> support_vector_regressor([[5,2],[1,5],[6,2]], [[3,2]], [2,1,4]) 1.634932078116079

machine_learning.forecasting.run.data_input_df = None