Spaces:
Runtime error
Runtime error
Update app.py
Browse files
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 |
|