Skip to main content

Result Analysis (Class 12th CS Project)

A comprehensive Python application designed to analyze, manage, and visualize student examination results from Excel sheets. This project parses raw result data, organizes it, and provides tools for statistical analysis and graphical representation.

Idea Given By Mam

Features

  • 📂 Excel Data Import: Seamless parsing of result sheets with automatic detection of subjects, marks, and student details. Supports fuzzy search to quickly find Excel files in the directory.
  • 📊 Data Visualization: Generate insights using Bar Charts, Line Charts, and Scatter Plots to analyze class performance.
  • 📈 Statistical Analysis: Automatically calculates percentages and totals. Groups students based on custom or default percentage thresholds.
  • 💾 Organized Storage: Keeps processed data structured by Class and Exam name in a local user-data database (CSV format).
  • 🖥️ Interactive Interface: Features a user-friendly CLI menu with support for keyboard navigation (using curses) and a compatibility mode for standard terminals.
  • 🗑️ Data Management: Built-in tools to view and safely delete old class or exam records.

Requirements

Ensure you have Python installed. The project relies on the following external libraries:

  • pandas (Data manipulation)
  • numpy (Numerical operations)
  • matplotlib (Plotting graphs)
  • thefuzz (Fuzzy string matching for file search)
  • openpyxl (Excel file reading backend)

Installation

You can install the package easily using pip:

pip install result-analysis

From Source

  1. Clone this repository.

  2. Navigate to the project directory.

  3. Install using pip:

    pip install .
    

    For development (editable mode), use:

    pip install -e .
    

    Note: Windows users might need windows-curses for the full UI experience.

Usage

Once installed, you can run the application from anywhere using the main command or its shortcuts (rsa, rta):

result-analysis
# OR
rsa
# OR
rta

Download Samples

To download sample Excel files for testing:

rsa download samples

This will create a samples/ folder in your current working directory containing test data (IIIA.xlsx, etc.).

Running the App

Alternatively, you can run it as a Python module:

python -m main
  1. Place your raw Result Excel files (.xlsx) in the directory where you are running the command.
  2. Follow the on-screen menu to:
    • Upload: Select and process an Excel file.
    • Group: Create summary statistics based on percentage ranges.
    • View: Display result tables in the terminal.
    • Plot: Visualize the data.
    • Delete: Remove unwanted data.

Project Structure

  • main.py: Entry point.
  • data/: Data parsing and handling logic.
  • ui/: User interface components.
  • graphs/: Plotting and visualization logic.
  • group/: Grouping logic.
  • user-data/: Automatically generated directory where processed CSV files are stored, organized by Class and Exam.

Release files for result-analysis 1.0.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for result-analysis 1.0.1
File Size Uploaded
result_analysis-1.0.1.tar.gz 44.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for result-analysis 1.0.1
File Interpreter ABI Platform
result_analysis-1.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 89.2 kB

Release files / result_analysis-1.0.1.tar.gz

Download URL result_analysis-1.0.1.tar.gz
Size 44.7 kB
Tags Source
SHA-256 checksum
How to use checksums
d11c0d78972e9d7a58d78b0662b3ba8d8571e3dc31525508503ead668eb96235
BLAKE2b-256 checksum
How to use checksums
560cf102d4d48f2b8c85a9171a02f6f98d8a79ac7c04a238195ca3643a7041a1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.11

Release files / result_analysis-1.0.1-py3-none-any.whl

Download URL result_analysis-1.0.1-py3-none-any.whl
Size 44.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cc481ba1aacc634632f9a09214d260782193ac833501de882acff458f6ad869a
BLAKE2b-256 checksum
How to use checksums
f1087459d1b38c409e84cec7f1ef5412d1f011a2f31eb58aa224f083a17c6792
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.13.11

Release history Release notifications | RSS feed

This release

1.0.1 This release

2 release files

1.0.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page