Spaces:
Runtime error
Runtime error
| import streamlit | |
| import pickle | |
| import numpy | |
| # web app on your desktop local host | |
| #run on your pycharm terminal ' streamlit run app.py ' | |
| # if using command window ensure the path is correct.. c:\users\idom...\pycharm..\machin learing> | |
| # that is pionting to your python file | |
| loaded_model = pickle.load(open('MWmodel.sav','rb')) | |
| #create function to handle predicition | |
| def microwave_fault_prediction (user_input_data): | |
| #convert to array | |
| Input_array = numpy.asarray(user_input_data) | |
| Input_array_reshaped = Input_array.reshape(1, -1) | |
| make_prediction = loaded_model.predict(Input_array_reshaped) | |
| print(make_prediction) # make_prediction= [10], pos is 0 | |
| if make_prediction== 0: | |
| return 'site is up' | |
| elif make_prediction == 1: | |
| return'site is down: fault: 1. inteference 2. misalignment 3. one of the odu is faulty' | |
| elif make_prediction == 2: | |
| return 'site is down: fault: 1. NO power at remote site(A),2.ODU offline remote site(A)(check alarm \'IF cable open\') ' | |
| elif make_prediction == 3: | |
| return 'site is down: fault:1.ODu hunged at remote site(A), reset power at both sites(A,B)' | |
| elif make_prediction == 4: | |
| return 'site is down: fault: 1. cascaded cable faulty at hub Site (B), 2. ODU/IDU/If cable offline,at remote end' | |
| elif make_prediction == 5: | |
| return'site is down: fault: 1 ODU at hub site(B)degraded( reset ODU, reterminate IF cable,check alarm)' | |
| elif make_prediction == 6: | |
| return 'site is down: faulty: if power is okay, odu burnt at either remote site (A) OR (B)' | |
| else: # do feature elimination for data irrelevant to outcome | |
| return 'case 7: site status cannot be determined by RSL data' | |
| #construct interface for user data input | |
| def main(): | |
| #give a title | |
| streamlit.title('microwave fault detection web app') | |
| #get input data from user | |
| RSLA = streamlit.number_input('Site A Local end: enter RSL of the site, it must be negative number, input zero for no supervision',min_value=-99, max_value=0, value=-30, step=1,key= 'rsla') | |
| #key= 'rslb' is to distinguish two similar widgets 'text_input' in streamlit | |
| RSLB = streamlit.number_input('Site B Remote end: enter RSL of the Hub site, it must be negative number, input zero for no supervision',min_value=-99, max_value=0, value=-30, step=1,key= 'rslb') | |
| #code for prediction | |
| detection ="" #declare this variable to hold result like empty list | |
| #mylist = [] | |
| if streamlit.button('click here for fault prediction'): | |
| detection=microwave_fault_prediction([RSLA,RSLB]) | |
| #convert inputs into a single parameter using list [1,2] | |
| #microwave_fault_prediction ...call the function to process input | |
| streamlit.success(detection) | |
| if __name__ == '__main__': | |
| main() | |
| # web app on your desktop local host | |
| #run on your pycharm terminal ' streamlit run microwaveAPP.py ' | |
| # if using command window ensure the path is correct.. c:\users\idom...\pycharm..\machin learing> | |
| # that is pionting to your python file | |