|
import gradio as gr |
|
import pandas as pd |
|
import pickle |
|
|
|
|
|
def load_model(model_name): |
|
filename=model_name |
|
loaded_model = pickle.load(open(filename, 'rb')) |
|
|
|
return loaded_model |
|
|
|
rf_clf=load_model('Random_forest_perm_clf.sav') |
|
|
|
|
|
|
|
from zipfile import ZipFile |
|
import csv |
|
import gradio as gr |
|
|
|
|
|
def Perm_pred(file_obj): |
|
dataframe=pd.read_csv(file_obj.name, delimiter=',') |
|
new_df=dataframe[['pdp_avg','RETURN_RATE','conversion','Cat_1','Cat_2','Cat_3']] |
|
sku=dataframe['SKU'] |
|
pred_score = rf_clf.predict(new_df) |
|
|
|
pred_list=pred_score.tolist() |
|
y=[] |
|
for i in range(len(pred_list)): |
|
|
|
if pred_score[i]==2: |
|
y.append('Never_Perm') |
|
elif pred_score[i]==1: |
|
y.append('Middle_Perm') |
|
else: |
|
y.append('Perm_A') |
|
|
|
pred=pd.DataFrame(y,columns=['Prediction']) |
|
pred['SKU']=sku |
|
df=pred[['SKU','Prediction']] |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return df |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
demo = gr.Interface(Perm_pred, inputs=[gr.inputs.File(label='Enter CSV File')], outputs= [gr.outputs.Dataframe(label='Predicted Label')]) |
|
|
|
if __name__ == "__main__": |
|
demo.launch(share=True) |
|
|