/
timchenko.ai
/
adaptive-learning-path-advisor
Обзор
Документация
Войти
/
timchenko.ai
/
adaptive-learning-path-advisor
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/activity_classifier.py
34 строки
1 KB
unknown
fix: add missing docstrings and update flake8 config
28 дек 2025, 20:49
28 дек 2025, 20:49
f8d4bcf
Код
Авторство
О чём код?
"""Module for classifying user activity types.""" import pandas as pd def classify_activities(df: pd.DataFrame) -> pd.DataFrame: """ Добавляет колонку 'interaction_type' к DataFrame с логами. Правила: - passive: login, view, video_play - active: quiz_attempt, assignment_submit, coding_exercise - social: forum_post, comment, message """ if "event_type" not in df.columns: raise ValueError("DataFrame должен содержать колонку 'event_type'") # Определяем правила passive_events = {"login", "view", "video_play"} active_events = {"quiz_attempt", "assignment_submit", "coding_exercise"} social_events = {"forum_post", "comment", "message"} def map_type(event): if event in passive_events: return "passive" elif event in active_events: return "active" elif event in social_events: return "social" else: return "unknown" # на случай новых типов df = df.copy() df["interaction_type"] = df["event_type"].apply(map_type) return df