# set path | |
import glob, os, sys; | |
sys.path.append('../utils') | |
#import needed libraries | |
import seaborn as sns | |
import matplotlib.pyplot as plt | |
import numpy as np | |
import pandas as pd | |
import streamlit as st | |
from st_aggrid import AgGrid | |
from utils.tapp_classifier import load_targetClassifier, target_classification | |
import logging | |
logger = logging.getLogger(__name__) | |
from utils.config import get_classifier_params | |
from io import BytesIO | |
import xlsxwriter | |
import plotly.express as px | |
from pandas.api.types import ( | |
is_categorical_dtype, | |
is_datetime64_any_dtype, | |
is_numeric_dtype, | |
is_object_dtype, | |
is_list_like) | |
# Declare all the necessary variables | |
classifier_identifier = 'target' | |
params = get_classifier_params(classifier_identifier) | |
def app(): | |
### Main app code ### | |
with st.container(): | |
if 'key0' in st.session_state: | |
df = st.session_state.key0 | |
#load Classifier | |
classifier = load_targetClassifier(classifier_name=params['model_name']) | |
st.session_state['{}_classifier'.format(classifier_identifier)] = classifier | |
if len(df) > 100: | |
warning_msg = ": This might take sometime, please sit back and relax." | |
else: | |
warning_msg = "" | |
df = target_classification(haystack_doc=df, | |
threshold= params['threshold']) | |
st.write(df) | |
st.session_state.key1 = df | |