0% found this document useful (0 votes)
19 views3 pages

Python Data Analysis Project Guide

Uploaded by

seibouismael8
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views3 pages

Python Data Analysis Project Guide

Uploaded by

seibouismael8
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

ENSA-Kenitra Module : Compétence Numériques

Digital Skills and Python Programming Final Project


Python Data Analysis and Visualization

Project Overview:

In this project, you will select a dataset, perform basic analysis using Pandas, and create
visualizations using Matplotlib. The objective is to apply Python programming skills,
including functional programming / OOP (Object-Oriented Programming) principles, to
extract meaningful insights/trends from the chosen dataset and communicate findings
effectively.

Project Objectives:

1. Learn to use Pandas for basic data manipulation and analysis.


2. Create basic visualizations using Matplotlib.
3. Work collaboratively using Trello for project management.

Project Instructions :

1. Dataset Selection:
o Choose a simple dataset that interests your team (e.g., sports, weather,
environment, business, or healthcare…).
o Download the dataset in CSV format from, for example you can use one of
the following websites, or any other websites of your choice:
 Kaggle
 Google Dataset Search
o Obtain instructor approval before proceeding.
2. Basic Data Analysis Tasks using Pandas:
o Inspect the dataset: Display a description of the dataset, display the first and
last 10 rows of the dataset, and list all column names along with their data
types. Additionally, identify and report the total number of missing values in
each column.
o Summarize data: Calculate basic statistics for numerical columns (e.g.,
average, maximum, minimum…).
o Handle missing data: Explain and apply strategies such as removing or
replacing missing values, dropping rows with missing values...
o Group and Filter data: Perform simple grouping or filtering to focus on
specific subsets of the dataset (e.g., filter students who scored above 15).

Pr. Mehdia AJANA Final Project 1


ENSA-Kenitra Module : Compétence Numériques

3. Visualization Tasks:
o Create some visualizations using Matplotlib (at least 3): For example:
 A bar chart to compare categories.
 A line plot to show trends and a scatter plot to show correlations.
o Add basic customizations for the plots like titles, axis labels, and legends.
4. Optional OOP Implementation:
o Create a Python class with these simple methods:
 load_data() for importing the dataset.
 analyze_data() for generating basic statistics.
 plot_data() for creating visualizations.
o This step is optional you can also use functions instead of OOP.
5. Teamwork and Project Management:
o Use Trello to manage tasks within your team (e.g., assign roles, set deadlines,
and track progress). Try to use labels and checklists to organize your work
better.
o Submit screenshots of the Trello board as part of the final report.

Deliverables:

1. Python Code:
o Submit well-structured Python scripts with clear comments.
o Include any additional relevant files used (e.g., CSV data files).
2. Report:
o Title Page: Include project title, team members, Professor and Module Name,
and submission date.
o Introduction: Explain the dataset and objectives.
o Methods: Describe data analysis and visualization steps.
o Results: Summarize findings and include visualizations.
o Challenges Faced: Describe any challenges encountered during the project
and how you overcame them.
o Conclusion: Highlight key findings and lessons learned.
o Submit your report as a PDF file.
o Your report will probably be about 5-7 pages of text long, but there are no
fixed upper or lower bounds on its size. You should write at an appropriate
length covering all important information.
3. Presentation Slides:
o Include slides for objectives, methodology, analysis results, visualizations,
and conclusions.
o You may use up to 10 slides and you are allowed 5-8 minutes to present your
work.
o Ensure that each team member contributes to the presentation.

Pr. Mehdia AJANA Final Project 2


ENSA-Kenitra Module : Compétence Numériques

Note: One group member should submit all the deliverables as a compressed file
(.rar or .zip) using the Classroom account.

Assessment Criteria:

1. Code Quality (30%): Effective use of Pandas, OOP/Functional Programming, and


Matplotlib; code readability and comments.
2. Report (30%): Clarity, structure, and depth of analysis.
3. Presentation (20%): Quality of slides and communication.
4. Teamwork (10%): Evidence of collaboration via Trello.
5. Creativity (10%): Innovative dataset selection and visualizations.

Timeline:

 Dataset Selection and Approval: 01/12/2024


 Project Progress Check-in (via Trello): 11/12/2024 and 18/12/2024
 Final Report and Code Submission: 20/12/2024
 Submit Presentation Slides: 22/12/2024
 Deliver Team Presentations: 23/12/2024 & 24/12/2024

These deadlines are firm and no late submissions are accepted.

Additional Notes:
 Use datasets that are manageable in size (less than 10,000 rows is ideal) with a
simple structure.
 Reach out for guidance at any stage of the project.

Good luck and have fun exploring data!

Pr. Mehdia AJANA Final Project 3

Common questions

Powered by AI

Creating a Python class with methods like load_data(), analyze_data(), and plot_data() ensures modularity and reusability of code. It promotes clean, organized programming and simplifies the process of performing dataset operations, making the project easier to manage and extend .

When writing the report, it is important to ensure clarity, structure, and depth of analysis. Each section—introduction, methods, results, challenges, and conclusions—should comprehensively cover its content. The report should be appropriately lengthy to include all necessary details without being verbose and must communicate findings effectively .

Functional Programming offers simplicity and ease in writing concise data manipulation functions, which is useful in straightforward analyses. Object-Oriented Programming provides structure and scalability, useful in complex projects requiring extensive modifications and extensions. The choice between them affects code readability, reusability, and complexity handling .

Obtaining instructor approval for dataset selection ensures that the dataset is appropriate for the project's objectives and manageable within its scope. It provides an opportunity for feedback, which helps in identifying potential challenges early and aligning with educational goals .

The timeline and deadlines ensure structured progress, prevent last-minute rushes, and provide clear milestones for assessing task completion. Meeting these deadlines fosters discipline and allows timely feedback and iteration, which contributes to the project's overall success and quality .

Including challenges and lessons learned in the project report provides valuable insights into problem-solving and project management processes. It helps in understanding team dynamics, improving future projects through reflective learning, and showcasing adaptability and resilience in overcoming obstacles .

Using Trello in a data analysis and visualization project supports teamwork by allowing the team to organize tasks, assign roles, set deadlines, and track progress efficiently. It facilitates communication and ensures each team member can contribute effectively, as indicated by the inclusion of screenshots of the Trello board as part of the project's final report .

Creativity in selecting datasets and creating visualizations allows for innovative and engaging presentations of data that can reveal unique insights. This is evaluated based on the ability to choose distinctive datasets and create novel visualizations that enhance the project's value and communicability .

Performing basic data analysis is important to understand the underlying patterns, statistics, and trends within the dataset. This understanding is crucial for creating meaningful and accurate visualizations that effectively communicate insights and support informed decision-making .

The document suggests handling missing data by removing or replacing missing values and dropping rows with missing values. These strategies help in preparing the data for analysis by ensuring the dataset is complete and does not cause errors during processing .

You might also like