Spaces:
Sleeping
Sleeping
File size: 1,691 Bytes
a2dcc43 5488719 cf0ade7 5488719 cf0ade7 5488719 cf0ade7 5488719 cf0ade7 5488719 cf0ade7 5488719 cf0ade7 5488719 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
import streamlit as st
import pandas as pd
# νμΌ κ²½λ‘ μ€μ
FILE_PATH = "book_topics_output_modified.xlsx"
# μμ
νμΌμ μ½μ΄μ€λ ν¨μ
def load_data(file_path):
return pd.read_excel(file_path)
# Streamlit μ ν리μΌμ΄μ
def main():
st.title("ν€μλ κΈ°λ° λμ μΆμ²")
# λ°μ΄ν° λ‘λ
data = load_data(FILE_PATH)
# μ΅μ’
ν ν½ μ΄μ΄ μλμ§ νμΈ
if 'μ΅μ’
ν ν½' not in data.columns:
st.error("μ΅μ’
ν ν½ μ΄μ΄ λ°μ΄ν°μ μμ΅λλ€.")
return
# μ΅μ’
ν ν½ μΉ΄ν
κ³ λ¦¬ μ ν
topic_category = st.selectbox(
"μ΅μ’
ν ν½μ μ ννμΈμ:",
sorted(data['μ΅μ’
ν ν½'].unique())
)
# μ νλ ν ν½μ ν΄λΉνλ λμ λͺ©λ‘ νν°λ§
filtered_data = data[data['μ΅μ’
ν ν½'] == topic_category]
# λμλͺ
μ΄μ΄ μλμ§ νμΈ
if 'λμλͺ
' not in data.columns:
st.error("λμλͺ
μ΄μ΄ λ°μ΄ν°μ μμ΅λλ€.")
return
# μ«μ μ΄μ΄ μλμ§ νμΈ
numeric_cols = [col for col in filtered_data.columns if pd.api.types.is_numeric_dtype(filtered_data[col])]
if not numeric_cols:
st.error("μ«μ μ΄μ΄ μμ΅λλ€.")
return
# κ°μ₯ λμ κ°μ κ°μ§ μ«μ μ΄ μ ν
number_col = numeric_cols[0] # 첫 λ²μ§Έ μ«μ μ΄ μ¬μ©
# μμ 10κ° λμλͺ
μΆμΆ
top_books = filtered_data.nlargest(20, number_col)[['λμλͺ
', number_col]]
# λμλͺ
λ§ μΆλ ₯
st.write(f"μ΅μ’
ν ν½ '{topic_category}'μ ν΄λΉνλ μμ 20κ° λμλͺ
:")
st.dataframe(top_books[['λμλͺ
']]) # λμλͺ
λ§ νμ
if __name__ == "__main__":
main() |