jonghhhh commited on
Commit
c7ceeea
ยท
verified ยท
1 Parent(s): f59f9ca

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +28 -74
app.py CHANGED
@@ -1,78 +1,32 @@
1
  import streamlit as st
2
  import pandas as pd
3
 
4
- # ์™ผ์ชฝ ์‚ฌ์ด๋“œ๋ฐ” ๋ฉ”๋‰ด ์ƒ์„ฑ
5
- st.sidebar.title("๋ฉ”๋‰ด")
6
- app_mode = st.sidebar.selectbox("์˜ต์…˜์„ ์„ ํƒํ•˜์„ธ์š”:", ["์„ค๋ฌธ ์„ค์ •", "์„ค๋ฌธ ์‘๋‹ต", "๊ฒฐ๊ณผ ํ™•์ธ"])
7
-
8
- # ์„ค๋ฌธ ์„ค์ • ํŒŒํŠธ (๊ต์‚ฌ์šฉ)
9
- if app_mode == "์„ค๋ฌธ ์„ค์ •":
10
- st.title("์„ค๋ฌธ ์„ค์ •")
11
-
12
- # ์„ค๋ฌธ ์งˆ๋ฌธ ์ž…๋ ฅ
13
- question = st.text_input("์„ค๋ฌธ ์งˆ๋ฌธ์„ ์ž…๋ ฅํ•˜์„ธ์š”:")
14
-
15
- # ์„ ํƒํ˜• ๋‹ต๋ณ€ ํ•ญ๋ชฉ ์ž…๋ ฅ
16
- options = st.text_area("์„ ํƒํ˜• ๋‹ต๋ณ€ ํ•ญ๋ชฉ์„ ์ž…๋ ฅํ•˜์„ธ์š” (๊ฐ ํ•ญ๋ชฉ์„ ์ƒˆ ์ค„์— ์ž…๋ ฅ):").split('\n')
17
-
18
- # ์ฃผ๊ด€์‹ ๋‹ต๋ณ€ ์ž…๋ ฅ ํ™œ์„ฑํ™”
19
- open_ended = st.checkbox("์ฃผ๊ด€์‹ ๋‹ต๋ณ€๋„ ํ—ˆ์šฉํ•˜๊ธฐ")
20
-
21
- # URL ์ƒ์„ฑ ๋ฐ ๊ณต์œ 
22
- if st.button("์„ค๋ฌธ ์‹œ์ž‘"):
23
- if question and options:
24
- st.session_state['question'] = question
25
- st.session_state['options'] = options
26
- st.session_state['open_ended'] = open_ended
27
- st.session_state['responses'] = []
28
-
29
- # ์„ค๋ฌธ URL ์•ˆ๋‚ด (์—ฌ๊ธฐ์—์„œ ์ˆ˜๋™์œผ๋กœ URL์„ ์ œ๊ณตํ•˜๊ฑฐ๋‚˜ ํ˜„์žฌ ํŽ˜์ด์ง€์— ๋Œ€ํ•œ ์•ˆ๋‚ด๋ฅผ ์ถ”๊ฐ€)
30
- st.success("์„ค๋ฌธ์ด ์„ค์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํ•™์ƒ๋“ค์—๊ฒŒ ์•„๋ž˜ URL์„ ๊ณต์œ ํ•˜์„ธ์š”:")
31
- st.write("https://<your-domain>.streamlit.app") # ์‹ค์ œ ์‚ฌ์šฉ ์ค‘์ธ Streamlit ์•ฑ์˜ URL์„ ์ž…๋ ฅ
32
-
33
- # ๋ฆฌ์…‹ ๋ฒ„ํŠผ
34
- if st.button("์„ค๋ฌธ ์ดˆ๊ธฐํ™”"):
35
- for key in st.session_state.keys():
36
- del st.session_state[key]
37
- st.experimental_rerun()
38
-
39
- # ์„ค๋ฌธ ์‘๋‹ต ํŒŒํŠธ (ํ•™์ƒ์šฉ)
40
- elif app_mode == "์„ค๋ฌธ ์‘๋‹ต":
41
- st.title("์ˆ˜์—… ์„ค๋ฌธ์กฐ์‚ฌ")
42
-
43
- if 'question' in st.session_state and 'options' in st.session_state:
44
- # ์„ค๋ฌธ ์งˆ๋ฌธ๊ณผ ์„ ํƒํ˜• ํ•ญ๋ชฉ ํ‘œ์‹œ
45
- question = st.session_state['question']
46
- options = st.session_state['options']
47
- open_ended = st.session_state['open_ended']
48
-
49
- st.write(f"### {question}")
50
- selected_option = st.radio("๋‹ต๋ณ€์„ ์„ ํƒํ•˜์„ธ์š”:", options)
51
-
52
- open_answer = None
53
- if open_ended:
54
- open_answer = st.text_input("๊ธฐํƒ€ ์˜๊ฒฌ์ด ์žˆ์œผ๋ฉด ์ž…๋ ฅํ•˜์„ธ์š”:")
55
-
56
- if st.button("๋‹ต๋ณ€ ์ œ์ถœ"):
57
- st.session_state['responses'].append({'์„ ํƒ': selected_option, '์ฃผ๊ด€์‹': open_answer if open_ended else None})
58
- st.success("๋‹ต๋ณ€์ด ์ œ์ถœ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!")
59
- else:
60
- st.warning("ํ˜„์žฌ ์„ค๋ฌธ์ด ์„ค์ •๋˜์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๋‚˜์ค‘์— ๋‹ค์‹œ ์‹œ๋„ํ•˜์„ธ์š”.")
61
-
62
- # ๊ฒฐ๊ณผ ํ™•์ธ ํŒŒํŠธ (๊ต์‚ฌ์šฉ)
63
- elif app_mode == "๊ฒฐ๊ณผ ํ™•์ธ":
64
- st.title("์„ค๋ฌธ ๊ฒฐ๊ณผ ํ™•์ธ")
65
-
66
- if 'responses' in st.session_state and st.session_state['responses']:
67
- st.write("### ์„ค๋ฌธ ๊ฒฐ๊ณผ")
68
- df = pd.DataFrame(st.session_state['responses'])
69
-
70
- if not df.empty:
71
- st.write("#### ์„ ํƒํ˜• ๋‹ต๋ณ€ ๋ถ„ํฌ")
72
- st.bar_chart(df['์„ ํƒ'].value_counts()) # ์„ ํƒํ˜• ๋‹ต๋ณ€ ๋นˆ๋„๋ฅผ ๋ง‰๋Œ€๊ทธ๋ž˜ํ”„๋กœ ํ‘œ์‹œ
73
-
74
- if '์ฃผ๊ด€์‹' in df.columns:
75
- st.write("#### ์ฃผ๊ด€์‹ ๋‹ต๋ณ€")
76
- st.table(df['์ฃผ๊ด€์‹'].dropna()) # ์ฃผ๊ด€์‹ ๋‹ต๋ณ€์„ ํ…Œ์ด๋ธ”๋กœ ํ‘œ์‹œ
77
  else:
78
- st.warning("์•„์ง ์ œ์ถœ๋œ ๋‹ต๋ณ€์ด ์—†์Šต๋‹ˆ๋‹ค.")
 
 
 
 
 
 
 
 
 
 
 
 
1
  import streamlit as st
2
  import pandas as pd
3
 
4
+ # ๊ต์‚ฌ์šฉ ์„ค๋ฌธ ์„ค์ • ๋ฐ ๊ฒฐ๊ณผ ํ™•์ธ ํŽ˜์ด์ง€
5
+ st.title("๊ฐ•์‚ฌ์šฉ ์„ค๋ฌธ ๊ด€๋ฆฌ")
6
+
7
+ # ์„ค๋ฌธ ์„ค์ •
8
+ st.subheader("์„ค๋ฌธ ์„ค์ •")
9
+ question = st.text_input("์„ค๋ฌธ ์งˆ๋ฌธ์„ ์ž…๋ ฅํ•˜์„ธ์š”:")
10
+ options = st.text_area("์„ ํƒํ˜• ๋‹ต๋ณ€ ํ•ญ๋ชฉ์„ ์ž…๋ ฅํ•˜์„ธ์š” (๊ฐ ํ•ญ๋ชฉ์„ ์ƒˆ ์ค„์— ์ž…๋ ฅ):").split('\n')
11
+ open_ended = st.checkbox("์ฃผ๊ด€์‹ ๋‹ต๋ณ€๋„ ํ—ˆ์šฉํ•˜๊ธฐ")
12
+
13
+ if st.button("์„ค๋ฌธ ์‹œ์ž‘"):
14
+ if question and options:
15
+ st.session_state['question'] = question
16
+ st.session_state['options'] = options
17
+ st.session_state['open_ended'] = open_ended
18
+ st.session_state['responses'] = []
19
+ st.success(f"์„ค๋ฌธ์ด ์„ค์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํ•™์ƒ๋“ค์—๊ฒŒ ์ด URL์„ ๊ณต์œ ํ•˜์„ธ์š”: https://huggingface.co/spaces/your-username/student_space")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
20
  else:
21
+ st.error("๋ชจ๋“  ํ•„๋“œ๋ฅผ ์ž…๋ ฅํ•˜์„ธ์š”.")
22
+
23
+ # ๊ฒฐ๊ณผ ํ™•์ธ
24
+ st.subheader("์„ค๋ฌธ ๊ฒฐ๊ณผ ํ™•์ธ")
25
+ if 'responses' in st.session_state and st.session_state['responses']:
26
+ df = pd.DataFrame(st.session_state['responses'])
27
+ st.bar_chart(df['์„ ํƒ'].value_counts())
28
+ if '์ฃผ๊ด€์‹' in df.columns:
29
+ st.write("์ฃผ๊ด€์‹ ๋‹ต๋ณ€:")
30
+ st.table(df['์ฃผ๊ด€์‹'].dropna())
31
+ else:
32
+ st.write("์•„์ง ์ œ์ถœ๋œ ๋‹ต๋ณ€์ด ์—†์Šต๋‹ˆ๋‹ค.")