Привет, я пытаюсь разработать общий модуль оценки для оценки учащихся на основе различных атрибутов. Я пытаюсь разработать общий метод с использованием python pandas. Ввод: кадр входных данных с идентификатором студента и UG Major и атрибутами для оценки (я назвал df_input). кадр данных, содержащий параметры оценки
Процесс: на основе типа переменной разработка процесса для расчета баллов для каждого атрибута.
Выходные данные: кадр входных данных с добавленными столбцами, отражающими оценку атрибута. Пример:
df_input
+
------------+-----------+----+------------+-----+------+
| STUDENT_ID | UG_MAJOR | C1 | C2 | C3 | C4 |
+------------+-----------+----+------------+-----+------+
| 123 | MATH | A | 8000-10000 | 12% | 9000 |
| 234 | ALL_OTHER | B | 1500-2000 | 10% | 1500 |
| 345 | ALL_OTHER | A | 2800-3000 | 8% | 2300 |
| 456 | ALL_OTHER | A | 8000-10000 | 12% | 3200 |
| 980 | ALL_OTHER | C | 1000-2500 | 15% | 2700 |
+------------+-----------+----+------------+-----+------+
df_ref +
---------+---------+---------+
| REF_COL | REF_VAL | REF_SCR |
+---------+---------+---------+
| C1 | A | 10 |
| C1 | B | 20 |
| C1 | C | 30 |
| C1 | NULL | 0 |
| C1 | MISSING | 0 |
| C1 | A | 20 |
| C1 | B | 30 |
| C1 | C | 40 |
| C1 | NULL | 10 |
| C1 | MISSING | 10 |
| C2 | <1000 | 0 |
| C2 | >1000 | 20 |
| C2 | >7000 | 30 |
| C2 | >9500 | 40 |
| C2 | MISSING | 0 |
| C2 | NULL | 0 |
| C3 | <3% | 5 |
| C3 | >3% | 10 |
| C3 | >5% | 100 |
| C3 | >7% | 200 |
| C3 | >10% | 300 |
| C3 | NULL | 0 |
| C3 | MISSING | 0 |
| C4 | <5000 | 10 |
| C4 | >5000 | 20 |
| C4 | >10000 | 30 |
| C4 | >15000 | 40 |
+---------+---------+---------+
+------------+-----------+----+------------+-----+------+--------+--------+--------+---------+
| Req.Output | | | | | | | | | |
+------------+-----------+----+------------+-----+------+--------+--------+--------+---------+
| STUDENT_ID | UG_MAJOR | C1 | C2 | C3 | C4 | C1_SCR | C2_SCR | C3_SCR | TOT_SCR |
| 123 | MATH | A | 8000-10000 | 12% | 9000 | | | | |
| 234 | ALL_OTHER | B | 1500-2000 | 10% | 1500 | | | | |
| 345 | ALL_OTHER | A | 2800-3000 | 8% | 2300 | | | | |
| 456 | ALL_OTHER | A | 8000-10000 | 12% | 3200 | | | | |
| 980 | ALL_OTHER | C | 1000-2500 | 15% | 2700 | | | | |
+------------+-----------+----+------------+-----+------+--------+--------+--------+---------+
Я хочу посмотреть, будет ли разработана какая-либо вещь, подобная функции, для достижения этой цели.
Спасибо, Пари.