Spaces:
Sleeping
Sleeping
| import streamlit as st | |
| import pandas as pd | |
| import pickle | |
| # Load the pre-trained model | |
| with open('model_svr.pkl', 'rb') as file_1: | |
| model_svr = pickle.load(file_1) | |
| def run(): | |
| # Create title | |
| st.title('IMDb Movie Score Prediction') | |
| # Create subheader | |
| st.subheader('Calculate IMDb Score of Movies') | |
| # Create a form for input | |
| with st.form('form_movie_prediction'): | |
| # Text inputs | |
| name = st.text_input('Movie Name: ', value = '') | |
| director = st.text_input('Director: ', value = '') | |
| writer = st.text_input('Writer: ', value = '') | |
| star = st.text_input('Star: ', value = '') | |
| country = st.text_input('Country: ', value = '') | |
| company = st.text_input('Production Company: ', value ='') | |
| released = st.text_input('Date Released: ', value = '') | |
| # Number inputs | |
| year = st.number_input('Release Year: ', value=2022, min_value=1900, max_value=2100) | |
| budget = st.number_input('Budget ($): ', value=500000000, min_value=0) | |
| gross = st.number_input('Gross Revenue ($): ', value=958000000, min_value=0) | |
| runtime = st.number_input('Runtime (minutes): ', value=189, min_value=1) | |
| votes = st.number_input('Votes: ', value=500000, min_value=0) | |
| # Categorical inputs | |
| rating = st.selectbox('Rating: ', ('G', 'PG', 'PG-13', 'R', 'NC-17'), index=3) | |
| genre = st.selectbox('Genre: ', ('Action', 'Adventure', 'Comedy', 'Drama', 'History', 'Sci-Fi', 'Thriller'), index=4) | |
| # Submit button | |
| submitted = st.form_submit_button('Predict IMDb Score') | |
| # Prepare the data for prediction | |
| data_inf = { | |
| 'name': name, | |
| 'rating': rating, | |
| 'genre': genre, | |
| 'year': year, | |
| 'released': released, | |
| 'votes': votes, | |
| 'director': director, | |
| 'writer': writer, | |
| 'star': star, | |
| 'country': country, | |
| 'budget': budget, | |
| 'gross': gross, | |
| 'company': company, | |
| 'runtime': runtime | |
| } | |
| data_inf = pd.DataFrame([data_inf]) | |
| st.dataframe(data_inf) | |
| if submitted: | |
| # Predict IMDb score for Oppenheimer using the SVR model | |
| prediction = model_svr.predict(data_inf) | |
| st.write('## Predicted IMDb Score: ', str(round(prediction[0], 2))) | |
| if __name__ == '__main__': | |
| run() |