A restful client library, designed to access predictnow restful API.
Project description
TO BEGIN ANY WORK WITH PREDICTNOW.AI CLIENT, WE START BY IMPORTING AND CREATING A CLASS INSTANCE
from predictnow.pdapi import PredictNowClient
import pandas as pd
api_key = "KeyProvidedToEachOfOurSubscriber"
api_host = "http://%VMIP%"
# Initial variables
username = "user1"
email = "xxxx@gmail.com"
client = PredictNowClient(api_host,api_key)
YOU WILL NEED TO EDIT THIS INPUT DATASET FILE PATH, LABELNAME AND MODELNAME!
file_path = 'my_amazing_features.xlsx'
labelname = 'futreturn' #might need to change this name accordingly
modelname = 'model1' #
import os
NOW YOUR PREDICTNOW.AI CLIENT HAS BEEN SETUP.
# For classification problem
params = {"timeseries": "yes", "weights": "no", "prob_calib": "no", "eda": "no", "type": "classification", "feature_selection": "shap", "analysis": "small", "boost": "gbdt", "mode": "train", "testsize": "1"}
# For regression problems
params = {"timeseries": "yes", "weights": "no", "prob_calib": "no", "eda": "no", "type": "regression", "feature_selection": "shap", "analysis": "small", "boost": "gbdt", "mode": "train", "testsize": "1"}
print("THE PARAMS", params)
LET'S CREATE THE MODEL BY SENDING THE PARAMETERS TO PREDICTNOW.AI
response = client.create_model
(
username=username, # only letters, numbers, or underscores
model_name=modelname,
params=params,
)
print(response)
LET'S LOAD UP THE FILE TO PANDAS IN THE LOCAL ENVIRONMENT
from pandas import read_csv # If you have the Excel file, replace read_csv with read_excel
from pandas import read_excel
df = read_excel(file_path) # Same here
df.name = "testdataframe" # Optional, but recommended
print(df)
START TRAINING MODEL
NOTE: THIS MAY TAKE UP TO several minutes
response = client.train
(
model_name=modelname,
input_df=df,
label=labelname,
username=username,
email=email
)
print("THE CLIENT HAS SENT THE DATASET TO THE SERVER AND TRIGGERED THE TRAINING MODEL TASK")
print(response)
CHECK THE STATUS OF THE MODEL
status = client.getstatus(
username=username,
train_id=response["train_id"]
)
print("Current status:")
print(status)
NOW WE WILL DOWNLOAD FILES
if status["state"] == "COMPLETED":
response = client.getresult(
model_name=modelname,
username=username,
)
import pandas as pd
predicted_prob_cv = pd.read_json(response.predicted_prob_cv)
print("predicted_prob_cv")
print(predicted_prob_cv)
predicted_prob_test = pd.read_json(response.predicted_prob_test)
print("predicted_prob_test")
print(predicted_prob_test)
predicted_targets_cv = pd.read_json(response.predicted_targets_cv)
print("predicted_targets_cv")
print(predicted_targets_cv)
START PREDICTING USING THE TRAINED MODEL
if status["state"] == "COMPLETED":
df = read_excel("example_input_live_latest.xlsx")
df.name = "myfirstpredictname" # optional, but recommended
# Predict demo
response = client.predict(
model_name=modelname,
input_df=df,
username=username,
eda=params["eda"],
prob_calib=params["prob_calib"]
)
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
predictnow-2.0.2.tar.gz
(13.3 kB
view hashes)
Built Distribution
predictnow-2.0.2-py3-none-any.whl
(12.1 kB
view hashes)
Close
Hashes for predictnow-2.0.2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 12c3ef1f1ad2542153fd87f85efcdc0ee6631f966a910b9893438f3dd59c6a23 |
|
MD5 | 2721826cbd7866a8f013ed86e4b8a7ca |
|
BLAKE2b-256 | 26e7cb5ff00200d1e26ad67adc121745bf2887d4bc146f3d13408dcebf04f178 |