dltmdgus commited on
Commit
9e01318
ยท
verified ยท
1 Parent(s): 8d31a29

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +20 -4
app.py CHANGED
@@ -6,7 +6,7 @@ file_path = "book_introductions_with_predictions.xlsx"
6
  df = pd.read_excel(file_path)
7
 
8
  # ์ฑ… ์ œ๋ชฉ ๊ฒ€์ƒ‰
9
- st.title(" ์ฑ… ์†Œ๊ฐœ๊ธ€ ๊ธฐ๋ฐ˜ ๊ฐ์ •๋ถ„์„")
10
 
11
  # ์‚ฌ์šฉ์ž๊ฐ€ ๊ฒ€์ƒ‰ํ•  ์ฑ… ์ œ๋ชฉ ์ž…๋ ฅ
12
  search_title = st.text_input("์ฑ… ์ œ๋ชฉ์„ ์ž…๋ ฅํ•˜์„ธ์š”:")
@@ -26,17 +26,33 @@ st.title("๊ฐ ๊ฐ์ •๋ณ„ ํ™•๋ฅ  ์ƒ์œ„ 10๊ฐœ์˜ ์ฑ…")
26
  # ํ™•๋ฅ  ๋ฐ์ดํ„ฐ๋ฅผ ๊ณต๋ฐฑ์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๊ธ์ •, ๋ถ€์ •, ์ค‘๋ฆฝ ์—ด๋กœ ๋ถ„๋ฆฌ
27
  df[['๊ธ์ •', '๋ถ€์ •', '์ค‘๋ฆฝ']] = df['ํ™•๋ฅ '].str.strip('[]').str.split(expand=True).astype(float)
28
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
29
  # ๊ธ์ • ํ™•๋ฅ  ์ƒ์œ„ 10๊ฐœ
30
- top_positive = df.sort_values(by='๊ธ์ •', ascending=False).head(10)[['์ฑ… ์ œ๋ชฉ', '๊ธ์ •']]
31
  st.subheader("๊ธ์ • ํ™•๋ฅ  ์ƒ์œ„ 10๊ฐœ ์ฑ…")
32
  st.table(top_positive)
33
 
34
  # ๋ถ€์ • ํ™•๋ฅ  ์ƒ์œ„ 10๊ฐœ
35
- top_negative = df.sort_values(by='๋ถ€์ •', ascending=False).head(10)[['์ฑ… ์ œ๋ชฉ', '๋ถ€์ •']]
36
  st.subheader("๋ถ€์ • ํ™•๋ฅ  ์ƒ์œ„ 10๊ฐœ ์ฑ…")
37
  st.table(top_negative)
38
 
39
  # ์ค‘๋ฆฝ ํ™•๋ฅ  ์ƒ์œ„ 10๊ฐœ
40
- top_neutral = df.sort_values(by='์ค‘๋ฆฝ', ascending=False).head(10)[['์ฑ… ์ œ๋ชฉ', '์ค‘๋ฆฝ']]
41
  st.subheader("์ค‘๋ฆฝ ํ™•๋ฅ  ์ƒ์œ„ 10๊ฐœ ์ฑ…")
42
  st.table(top_neutral)
 
6
  df = pd.read_excel(file_path)
7
 
8
  # ์ฑ… ์ œ๋ชฉ ๊ฒ€์ƒ‰
9
+ st.title("์ฑ… ์†Œ๊ฐœ๊ธ€ ๊ธฐ๋ฐ˜ ๊ฐ์ •๋ถ„์„")
10
 
11
  # ์‚ฌ์šฉ์ž๊ฐ€ ๊ฒ€์ƒ‰ํ•  ์ฑ… ์ œ๋ชฉ ์ž…๋ ฅ
12
  search_title = st.text_input("์ฑ… ์ œ๋ชฉ์„ ์ž…๋ ฅํ•˜์„ธ์š”:")
 
26
  # ํ™•๋ฅ  ๋ฐ์ดํ„ฐ๋ฅผ ๊ณต๋ฐฑ์œผ๋กœ ๋ถ„๋ฆฌํ•˜์—ฌ ๊ธ์ •, ๋ถ€์ •, ์ค‘๋ฆฝ ์—ด๋กœ ๋ถ„๋ฆฌ
27
  df[['๊ธ์ •', '๋ถ€์ •', '์ค‘๋ฆฝ']] = df['ํ™•๋ฅ '].str.strip('[]').str.split(expand=True).astype(float)
28
 
29
+ def get_top_n_unique(df, column, n=10):
30
+ # ์ƒ์œ„ n๊ฐœ์˜ ๋„์„œ๋ฅผ ์ถ”์ถœํ•˜๋˜ ์ค‘๋ณต ์ œ๊ฑฐ
31
+ top_n = df.sort_values(by=column, ascending=False)
32
+ top_n_unique = []
33
+ seen_titles = set()
34
+
35
+ for index, row in top_n.iterrows():
36
+ if len(top_n_unique) >= n:
37
+ break
38
+ title = row['์ฑ… ์ œ๋ชฉ']
39
+ if title not in seen_titles:
40
+ top_n_unique.append(row)
41
+ seen_titles.add(title)
42
+
43
+ return pd.DataFrame(top_n_unique)[['์ฑ… ์ œ๋ชฉ', column]]
44
+
45
  # ๊ธ์ • ํ™•๋ฅ  ์ƒ์œ„ 10๊ฐœ
46
+ top_positive = get_top_n_unique(df, '๊ธ์ •', n=10)
47
  st.subheader("๊ธ์ • ํ™•๋ฅ  ์ƒ์œ„ 10๊ฐœ ์ฑ…")
48
  st.table(top_positive)
49
 
50
  # ๋ถ€์ • ํ™•๋ฅ  ์ƒ์œ„ 10๊ฐœ
51
+ top_negative = get_top_n_unique(df, '๋ถ€์ •', n=10)
52
  st.subheader("๋ถ€์ • ํ™•๋ฅ  ์ƒ์œ„ 10๊ฐœ ์ฑ…")
53
  st.table(top_negative)
54
 
55
  # ์ค‘๋ฆฝ ํ™•๋ฅ  ์ƒ์œ„ 10๊ฐœ
56
+ top_neutral = get_top_n_unique(df, '์ค‘๋ฆฝ', n=10)
57
  st.subheader("์ค‘๋ฆฝ ํ™•๋ฅ  ์ƒ์œ„ 10๊ฐœ ์ฑ…")
58
  st.table(top_neutral)