learning_path_analizer
3 месяца назад
3 месяца назад
3 месяца назад
3 месяца назад
3 месяца назад
3 месяца назад
3 месяца назад
3 месяца назад
3 месяца назад
3 месяца назад
README.md
Learning Path Analyzer (LPA)
LPA is a tool for analyzing Learning Management System (LMS) logs to provide insights into student engagement and performance. It generates comprehensive Markdown reports with visualizations and automated recommendations.
Features
- Data Validation: Ensures CSV logs follow the required format and event types.
- Analytics: Calculates engagement scores, performance metrics, and correlation.
- Recommendations: Automated advice for both instructors and students.
- Visualizations: Generates activity distribution and engagement-performance scatter plots.
- CI/CD: Automated testing, linting, and scheduled report generation via GitHub Actions.
Quick Start
1. Setup Environment
2. Generate Sample Data
3. Run Analysis
Check the results in .docs/reports/latest/report.md
CSV Input Format
The input CSV must contain the following columns:
| Column | Type | Description |
|---|---|---|
| str | Unique identifier for the student |
| ISO 8601 | Time of the event |
| enum | login, view_resource, quiz_attempt, assignment_submit, forum_post |
| str | ID of the resource (optional) |
| float | Achievement score (0-100) |
| int | Time spent on activity |
| 0/1 | Status of the attempt |
Development
Running Tests
Linting & Formatting
CI/CD Workflows
- CI (
): Runs on every push and PR. Executes Ruff, Black, and Pytest.ci.yml - Scheduled Report (
): Runs daily at 03:00 UTC. It generates fresh synthetic data, performs analysis, and uploads the results as a GitHub Action Artifact.report.yml- To view artifacts: Go to the "Actions" tab, click on a "Scheduled Analysis Report" run, and scroll to the "Artifacts" section at the bottom.