Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
|
@@ -199,9 +199,12 @@ def main(file, num_clusters_to_display):
|
|
| 199 |
silhouette_avg = silhouette_score(X, kmeans.labels_)
|
| 200 |
silhouette_plot = silhouette_analysis(X, kmeans.labels_, num_clusters=15)
|
| 201 |
|
|
|
|
|
|
|
|
|
|
| 202 |
with tempfile.NamedTemporaryFile(delete=False, suffix=".csv") as tmpfile:
|
| 203 |
df.to_csv(tmpfile.name, index=False)
|
| 204 |
-
return tmpfile.name,
|
| 205 |
except Exception as e:
|
| 206 |
print(f"Error: {e}")
|
| 207 |
return str(e), None, None, None
|
|
@@ -214,7 +217,7 @@ interface = gr.Interface(
|
|
| 214 |
],
|
| 215 |
outputs=[
|
| 216 |
gr.File(label="Clustered Data CSV"),
|
| 217 |
-
gr.Number(label="
|
| 218 |
gr.Image(label="Cluster Plot"),
|
| 219 |
gr.Image(label="Silhouette Plot")
|
| 220 |
],
|
|
|
|
| 199 |
silhouette_avg = silhouette_score(X, kmeans.labels_)
|
| 200 |
silhouette_plot = silhouette_analysis(X, kmeans.labels_, num_clusters=15)
|
| 201 |
|
| 202 |
+
# Convert silhouette score to percentage
|
| 203 |
+
silhouette_percentage = (silhouette_avg + 1) * 50
|
| 204 |
+
|
| 205 |
with tempfile.NamedTemporaryFile(delete=False, suffix=".csv") as tmpfile:
|
| 206 |
df.to_csv(tmpfile.name, index=False)
|
| 207 |
+
return tmpfile.name, silhouette_percentage, cluster_plot, silhouette_plot
|
| 208 |
except Exception as e:
|
| 209 |
print(f"Error: {e}")
|
| 210 |
return str(e), None, None, None
|
|
|
|
| 217 |
],
|
| 218 |
outputs=[
|
| 219 |
gr.File(label="Clustered Data CSV"),
|
| 220 |
+
gr.Number(label="Clustering Quality (%)"),
|
| 221 |
gr.Image(label="Cluster Plot"),
|
| 222 |
gr.Image(label="Silhouette Plot")
|
| 223 |
],
|