aliceblue11 commited on
Commit
0834a93
·
verified ·
1 Parent(s): ef055fe

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +40 -2
app.py CHANGED
@@ -1,4 +1,42 @@
1
- scores[scale] = {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
  "원점수": raw_score,
3
  "T점수": round(t_score, 2),
4
  "백분위": round((raw_score - mean + 2 * sd) / (4 * sd) * 100, 2),
@@ -7,7 +45,7 @@ scores[scale] = {
7
 
8
  # 결과 시각화
9
  def visualize_results(scores):
10
- scales = scores.keys()
11
  t_scores = [scores[scale]["T점수"] for scale in scales]
12
 
13
  plt.figure(figsize=(10, 6))
 
1
+ import gradio as gr
2
+ import numpy as np
3
+ import matplotlib.pyplot as plt
4
+
5
+ # 질문 데이터: 기존 질문 + 추가 질문
6
+ QUESTIONS = [
7
+ "쉬운 일보다는 도전적인 일이 더 좋다.",
8
+ "나를 좋지 않게 대했던 사람들과도 친하게 지낸다.",
9
+ "음악을 듣거나 산책을 할 때 그 속에 빠져들어 나 자신을 잊는다.",
10
+ "종종 실제보다 일이 더 어렵거나 위험할 것이라고 예상한다.",
11
+ "내가 할 수 있는 한 더 잘 하고 싶기 때문에, 열심을 다해 나 자신을 몰아붙인다.",
12
+ "주머니가 바닥날 때까지 돈을 쓰거나, 신용카드를 너무 많이 사용해서 빚을 지는 때가 있다.",
13
+ "내가 가지고 있는 많은 습관들은 내가 가치 있는 목표를 달성하는 데 방해가 된다.",
14
+ "문제가 생기면 혼자서 해결하려 한다.",
15
+ "미래에 어떤 일이 잘못될까봐 자주 걱정한다.",
16
+ "별로 힘들이지 않고 하루 종일 활동할 수 있다.",
17
+ # 40개 이상의 질문을 여기에 추가
18
+ ]
19
+
20
+ # 규준 점수 데이터
21
+ STANDARD_SCORES = {
22
+ "NS": {"M": 20, "SD": 5},
23
+ "HA": {"M": 18, "SD": 4},
24
+ "RD": {"M": 22, "SD": 6},
25
+ "PS": {"M": 19, "SD": 4},
26
+ "SD": {"M": 24, "SD": 6},
27
+ "CO": {"M": 26, "SD": 5},
28
+ "ST": {"M": 18, "SD": 5},
29
+ }
30
+
31
+ # 점수 계산 함수
32
+ def calculate_scores(responses):
33
+ scores = {}
34
+ for scale in STANDARD_SCORES.keys():
35
+ raw_score = sum(responses.get(scale, [])) # 원점수 합계
36
+ mean = STANDARD_SCORES[scale]["M"]
37
+ sd = STANDARD_SCORES[scale]["SD"]
38
+ t_score = 50 + 10 * (raw_score - mean) / sd
39
+ scores[scale] = {
40
  "원점수": raw_score,
41
  "T점수": round(t_score, 2),
42
  "백분위": round((raw_score - mean + 2 * sd) / (4 * sd) * 100, 2),
 
45
 
46
  # 결과 시각화
47
  def visualize_results(scores):
48
+ scales = list(scores.keys())
49
  t_scores = [scores[scale]["T점수"] for scale in scales]
50
 
51
  plt.figure(figsize=(10, 6))