Skip to content

Commit 947c303

Browse files
authored
Merge pull request #175 from revanth1718/main
Fix the streamlit app
2 parents 8de65ea + 115304d commit 947c303

File tree

3 files changed

+46
-2
lines changed

3 files changed

+46
-2
lines changed
-4 Bytes
Binary file not shown.

Web_app/pages/1_Movie_Analysis.py

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,12 @@
55
import json
66

77

8+
9+
st.sidebar.header("Upload your CSV!")
10+
st.sidebar.write("Make sure your CSV file contains a 'review' or 'user_review' column.")
11+
12+
uploaded_file = st.sidebar.file_uploader("Choose a CSV file", type="csv")
13+
814
with open('Movie_Animated.json', encoding='utf-8') as anim_source:
915
animation_data = json.load(anim_source)
1016
st_lottie(animation_data, 1, True, True, "high", 150, -100)
@@ -30,6 +36,7 @@
3036
</style>
3137
""", unsafe_allow_html=True)
3238

39+
3340
st.markdown('<div class="centered">', unsafe_allow_html=True)
3441
st.markdown('<h1 class="yellow-headline">Movie Review Analysis</h1>', unsafe_allow_html=True)
3542

@@ -45,6 +52,44 @@ def load_data(file):
4552
try:
4653
return pd.read_csv(file, encoding='utf-8')
4754
except UnicodeDecodeError:
55+
56+
st.error("File encoding not supported. Please upload a CSV file with UTF-8 or Latin1 encoding.")
57+
return None
58+
59+
if uploaded_file is not None:
60+
reviews_df = load_data(uploaded_file)
61+
62+
if reviews_df is not None:
63+
st.write("Data Preview:")
64+
st.write(reviews_df.head())
65+
66+
st.write("Column Names:")
67+
st.write(reviews_df.columns.tolist())
68+
69+
# Check for 'review' or 'user_review' columns
70+
review_column = None
71+
if 'review' in reviews_df.columns:
72+
review_column = 'review'
73+
elif 'user_review' in reviews_df.columns:
74+
review_column = 'user_review'
75+
76+
if review_column:
77+
st.write("Sentiment Analysis:")
78+
sentiment_df, analyzed_df = analyze_reviews(reviews_df)
79+
st.write(sentiment_df)
80+
81+
st.write("Analyzed DataFrame with Sentiments:")
82+
st.write(analyzed_df.head())
83+
84+
st.write("Movie Recommendations:")
85+
recommendations = recommend_movies(analyzed_df)
86+
st.write(recommendations)
87+
else:
88+
st.error("The uploaded CSV file does not contain a 'review' or 'user_review' column.")
89+
else:
90+
st.write("Please upload a CSV file to proceed.")
91+
st.write("Make sure your CSV file contains a 'review' or 'user_review' column.")
92+
4893
try:
4994
return pd.read_csv(file, encoding='latin1')
5095
except UnicodeDecodeError:
@@ -85,3 +130,4 @@ def load_data(file):
85130
st.write("Please upload a CSV file to proceed.")
86131

87132
st.markdown('</div>', unsafe_allow_html=True)
133+

Web_app/utils.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@ def analyze_reviews(df):
1717
report = classification_report(y, y_pred, output_dict=True)
1818
df['sentiment'] = y_pred
1919

20-
2120
print("Analyzed DataFrame with Sentiments:")
2221
print(df.head())
2322

@@ -26,7 +25,6 @@ def analyze_reviews(df):
2625
def recommend_movies(df):
2726
positive_reviews = df[df['sentiment'] == 1]
2827

29-
3028
print("DataFrame with Positive Reviews:")
3129
print(positive_reviews.head())
3230

0 commit comments

Comments
 (0)