Jayesh13 commited on
Commit
26343ed
·
verified ·
1 Parent(s): 5cd21b9

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +16 -13
app.py CHANGED
@@ -3,6 +3,7 @@ os.system("pip install streamlit pandas xlsxwriter openpyxl")
3
 
4
  import streamlit as st
5
  import pandas as pd
 
6
 
7
  st.set_page_config(page_title="Protein Repeat Comparator", layout="centered")
8
  st.title("🧬 Protein Repeat Comparator")
@@ -40,18 +41,20 @@ if uploaded_file1 and uploaded_file2:
40
  diff_df["Total Difference"] = diff_df.iloc[:, 2:].sum(axis=1)
41
  sorted_diff = diff_df.sort_values(by="Total Difference", ascending=False)
42
 
43
- # Save to Excel
44
- output_file = "protein_repeat_comparison.xlsx"
45
- sorted_diff.to_excel(output_file, index=False)
 
 
46
 
47
  st.success("✅ Comparison complete!")
48
- with open(output_file, "rb") as f:
49
- st.download_button(
50
- label="📥 Download Comparison Excel",
51
- data=f,
52
- file_name=output_file,
53
- mime="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
54
- )
55
-
56
- except Exception as e:
57
- st.error(f"⚠️ Error: {e}")
 
3
 
4
  import streamlit as st
5
  import pandas as pd
6
+ from io import BytesIO
7
 
8
  st.set_page_config(page_title="Protein Repeat Comparator", layout="centered")
9
  st.title("🧬 Protein Repeat Comparator")
 
41
  diff_df["Total Difference"] = diff_df.iloc[:, 2:].sum(axis=1)
42
  sorted_diff = diff_df.sort_values(by="Total Difference", ascending=False)
43
 
44
+ # Save to in-memory buffer
45
+ output_buffer = BytesIO()
46
+ with pd.ExcelWriter(output_buffer, engine="openpyxl") as writer:
47
+ sorted_diff.to_excel(writer, index=False)
48
+ output_buffer.seek(0)
49
 
50
  st.success("✅ Comparison complete!")
51
+ st.download_button(
52
+ label="📥 Download Comparison Excel",
53
+ data=output_buffer,
54
+ file_name="protein_repeat_comparison.xlsx",
55
+ mime="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
56
+ )
57
+
58
+ except Exception as e:
59
+ st.error(f"⚠️ Error: {e}")
60
+