Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -126,6 +126,9 @@ model = FastText.load(
|
|
126 |
|
127 |
restaurant_embeddings = extract_restaurant_embeddings(model, df)
|
128 |
|
|
|
|
|
|
|
129 |
def run_clustering(num_clusters, clusters_to_display):
|
130 |
kmeans = KMeans(n_clusters=num_clusters, random_state=42)
|
131 |
restaurant_clusters = cluster_embeddings(restaurant_embeddings, kmeans)
|
@@ -157,6 +160,20 @@ def run_clustering(num_clusters, clusters_to_display):
|
|
157 |
|
158 |
return analysis, m
|
159 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
160 |
# Create Gradio interface
|
161 |
with gr.Blocks(title="Restaurant Clustering Tool") as app:
|
162 |
gr.Markdown("# Restaurant K-Means Clustering Analysis")
|
@@ -194,6 +211,8 @@ with gr.Blocks(title="Restaurant Clustering Tool") as app:
|
|
194 |
inputs=[num_clusters_input, display_clusters_input],
|
195 |
outputs=[output_text, output_plot]
|
196 |
)
|
|
|
|
|
197 |
|
198 |
gr.Markdown("""
|
199 |
## About this app
|
|
|
126 |
|
127 |
restaurant_embeddings = extract_restaurant_embeddings(model, df)
|
128 |
|
129 |
+
clusters_jsons = None
|
130 |
+
|
131 |
+
|
132 |
def run_clustering(num_clusters, clusters_to_display):
|
133 |
kmeans = KMeans(n_clusters=num_clusters, random_state=42)
|
134 |
restaurant_clusters = cluster_embeddings(restaurant_embeddings, kmeans)
|
|
|
160 |
|
161 |
return analysis, m
|
162 |
|
163 |
+
def update_display(clusters_to_display):
|
164 |
+
|
165 |
+
if clusters_jsons is None:
|
166 |
+
return "Please run clustering first", None
|
167 |
+
|
168 |
+
# Ensure we don't try to show more clusters than exist
|
169 |
+
if clusters_to_display > len(clusters_jsons):
|
170 |
+
clusters_to_display = len(clusters_jsons)
|
171 |
+
|
172 |
+
# Create map visualization with selected number of clusters
|
173 |
+
m = visualise_on_map(clusters_jsons[:clusters_to_display])
|
174 |
+
|
175 |
+
return m
|
176 |
+
|
177 |
# Create Gradio interface
|
178 |
with gr.Blocks(title="Restaurant Clustering Tool") as app:
|
179 |
gr.Markdown("# Restaurant K-Means Clustering Analysis")
|
|
|
211 |
inputs=[num_clusters_input, display_clusters_input],
|
212 |
outputs=[output_text, output_plot]
|
213 |
)
|
214 |
+
|
215 |
+
display_clusters_input.change(update_display, inputs=[display_clusters_input], outputs=[output_plot])
|
216 |
|
217 |
gr.Markdown("""
|
218 |
## About this app
|