Skip to content

About

"A Python CSV processor with custom logic for employee performance and raise calculation"

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

Repository files navigation

🔍 Employee Raise Recommendation System

This project is a CSV data processor that evaluates employee performance and determines their raise percentage based on various criteria such as role, department, task performance, tenure, and team dependencies.


📁 Project Structure

data_processor/ ├── input/ │ └── sample.csv ├── logs/ │ └── run_log.txt ├── output/ │ └── processed.csv ├── processor.py ├── utils.py ├── utils2.py ├── README.md ├── .gitignore └── requirements.txt

⚙️ Setup Instructions

1. 📦 Requirements

This project runs on pure Python, no external libraries needed.
✅ Works with Python 3.6+

If you don't have Python installed, download it here.


2. 🚀 How to Run

  1. Clone this repo:
    git clone https://github.com/your-username/employee-raise-processor.git
    cd employee-raise-processor

Place your input CSV file inside the input/ folder. The file must contain the following headers (order doesn’t matter):

Copy code Serial_Number, Employee_Name, Employee_ID, Department, Job_Role, Assigned_Tasks, Completed_Tasks, Dependency, Tenure_in_Company Run the processor:

bash Copy code python processor.py Check:

output/processed.csv → contains final raise percentages.

logs/run_log.txt → contains warnings, errors, and execution logs.

📊 What the Script Does For each employee, the script:

Validates required fields and headers

Handles bad/missing/extra data with informative logging

Classifies:

Role based on seniority

Department by business impact

Dependency by criticality

Calculates:

Task performance

Tenure level

Composite performance score

Outputs:

A new CSV with Serial_Number, Employee_Name, Employee_ID, and Raise_percent

📌 Notes Rows with missing or corrupt data are automatically skipped with a detailed log entry.

You can inspect run_log.txt to debug any input issues.

🛠️ To-Do / Future Improvements Replace global logging with a Logger class

Use reverse lookup maps for performance

Add CLI interface for dynamic paths

👨‍💻 Author Made by Agrim Sharma Feel free to connect or suggest improvements!

About

"A Python CSV processor with custom logic for employee performance and raise calculation"

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages