JUNGU commited on
Commit
b84e319
·
verified ·
1 Parent(s): 5d89abf

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +18 -1
app.py CHANGED
@@ -38,9 +38,17 @@ def manage_session_state():
38
  if 'filtered_data' not in st.session_state:
39
  st.session_state.filtered_data = None
40
 
 
 
 
 
 
 
 
41
  # 데이터 로드
42
  @st.cache_data
43
  def load_data(file):
 
44
  file_extension = file.name.split('.')[-1].lower()
45
  if file_extension == 'csv':
46
  data = pd.read_csv(file)
@@ -208,12 +216,21 @@ def main():
208
  manage_session_state()
209
 
210
  if st.session_state.data is None:
211
- data_input_method = st.radio("데이터 입력 방법 선택:", ("파일 업로드", "수동 입력"), key="data_input_method")
212
 
213
  if data_input_method == "파일 업로드":
214
  uploaded_file = st.file_uploader("CSV, XLS, 또는 XLSX 파일을 선택하세요", type=["csv", "xls", "xlsx"], key="file_uploader")
215
  if uploaded_file is not None:
216
  st.session_state.data = load_data(uploaded_file)
 
 
 
 
 
 
 
 
 
217
  else:
218
  st.session_state.data = manual_data_entry()
219
 
 
38
  if 'filtered_data' not in st.session_state:
39
  st.session_state.filtered_data = None
40
 
41
+
42
+ SAMPLE_DATA_FILES = [
43
+ {"name": "과목별 노력과 성취도", "file": "subject.xlsx"},
44
+ {"name": "채점", "file": "score.xlsx"},
45
+ {"name": "출석일수와 성적", "file": "attendance.xlsx"}
46
+ ]
47
+
48
  # 데이터 로드
49
  @st.cache_data
50
  def load_data(file):
51
+ file_path = os.path.join("sample_data", file_name)
52
  file_extension = file.name.split('.')[-1].lower()
53
  if file_extension == 'csv':
54
  data = pd.read_csv(file)
 
216
  manage_session_state()
217
 
218
  if st.session_state.data is None:
219
+ data_input_method = st.radio("데이터 입력 방법 선택:", ("파일 업로드", "예시 데이터 사용", "수동 입력"), key="data_input_method")
220
 
221
  if data_input_method == "파일 업로드":
222
  uploaded_file = st.file_uploader("CSV, XLS, 또는 XLSX 파일을 선택하세요", type=["csv", "xls", "xlsx"], key="file_uploader")
223
  if uploaded_file is not None:
224
  st.session_state.data = load_data(uploaded_file)
225
+ elif data_input_method == "예시 데이터 사용":
226
+ sample_choice = st.selectbox(
227
+ "예시 데이터 선택",
228
+ options=[sample["name"] for sample in SAMPLE_DATA_FILES],
229
+ format_func=lambda x: x
230
+ )
231
+ if st.button("선택한 예시 데이터 로드"):
232
+ selected_file = next(sample["file"] for sample in SAMPLE_DATA_FILES if sample["name"] == sample_choice)
233
+ st.session_state.data = load_sample_data(selected_file)
234
  else:
235
  st.session_state.data = manual_data_entry()
236