#
AvalCal – Automatic Evaluation & Presentation Generator
---
## Overview
AvalCal is a Python-based automation tool designed to process student evaluation spreadsheets and automatically generate formatted PowerPoint presentations with performance summaries and student imagery.
The system was developed to simplify the preparation of evaluation reports and visual presentations by automating:
- Excel data processing
- Evaluation classification
- Student ranking
- PowerPoint slide editing
- Automatic image insertion
- Presentation generation
The application combines spreadsheet manipulation with automated PowerPoint editing to accelerate academic and institutional reporting workflows. :contentReference[oaicite:0]{index=0}
---
# Main Features
## Automatic Excel Processing
- Import `.xlsx` evaluation files
- Automatic data cleanup
- Column normalization
- Quantitative score processing
- Qualitative classification analysis
---
## Student Classification
The system automatically categorizes students into:
- MUITO BOM
- SUFICIENTE
- MEDIOCRE
- MAU
---
## PowerPoint Automation
- Automatic PowerPoint generation
- Dynamic text replacement
- Student number insertion
- Automatic photograph placement
- Slide customization
---
## Image Integration
- Automatic student image loading
- Dynamic image positioning
- PowerPoint image rendering
---
# Technologies Used
| Technology | Purpose |
|:---:|:---:|
| Python | Main programming language |
| Pandas | Excel data processing |
| python-pptx | PowerPoint automation |
| Tkinter | File selection interface |
| OpenPyXL | Excel compatibility |
| OS Library | File management |
---
# Project Structure
```txt
.
├── AvalCal.ipynb
├── Apresentação Comportamentos.pptx
├── Fotos/
├── README.md
```
---
# Requirements
## Python Version
```txt
Python 3.10+
```
---
# Required Libraries
Install dependencies:
```bash
pip install pandas python-pptx openpyxl
```
---
# Running the Application
Execute the notebook:
```bash
jupyter notebook
```
Open:
```txt
AvalCal.ipynb
```
---
# Input Files
## Excel File
The application expects an evaluation spreadsheet in:
```txt
.xlsx
```
format.
The Excel file is selected dynamically through a file dialog interface.
---
## PowerPoint Template
Required template:
```txt
Apresentação Comportamentos.pptx
```
This presentation is automatically modified by the system.
---
## Student Photographs
Student images must be placed inside:
```txt
/Fotos
```
directory.
---
# Main Functionalities
## Excel Cleaning & Transformation
The notebook automatically:
- Merges rows
- Renames columns
- Removes unnecessary fields
- Formats scores
- Calculates final values
- Cleans missing values
---
## Quantitative & Qualitative Analysis
The system processes:
- Quantitative grades
- Qualitative classifications
- Attendance/suspension indicators
- Behavioral metrics
---
## Automatic Presentation Population
The PowerPoint template is dynamically updated with:
- Student numbers
- Performance rankings
- Student photographs
- Evaluation highlights
---
# Generated Output
The system generates:
- Automated PowerPoint presentations
- Structured evaluation summaries
- Visual student performance reports
---
# Workflow
```txt
Excel Input
↓
Data Cleaning
↓
Classification Processing
↓
Student Ranking
↓
PowerPoint Population
↓
Final Presentation Export
```
---
# User Interface
The application includes:
- File picker dialog
- Automated processing workflow
- Dynamic PowerPoint editing
- Automatic image handling
---
# Intended Use Cases
- Academic evaluations
- Military training assessments
- Student performance analysis
- Behavioral reporting
- Institutional presentations
- Automated evaluation dashboards
---
# Future Improvements
- GUI application version
- PDF export
- Automatic charts
- Multi-template support
- AI-based evaluation insights
- Database integration
- Web dashboard version
---
# Disclaimer
This project was developed for academic and institutional automation purposes.
Users remain responsible for validating all generated evaluation data before official usage.
---
# Author
José Garcia
Data Scientist
PhD Researcher – Digitalization Engineering