Final Project Instructions
Data 101 Section 2 · Fall 2026 · Prof. Edgar Melendrez
Overview
The final project is your chance to show what you can do with data! You will pick a question you care about, find data that can help answer it, and then clean, explore, visualize, and explain what you find. The final project is 20% of your grade.
The best projects come from something you already love. Sports, music, biology, psychology, business, your hometown, a game you play… if you are curious about it, there is probably data about it.
Due Dates
By completing this project you will be able to:
- Wednesday 10/21 10:50 am - Data Exploration
- Sunday 11/8 11:59pm - Final Project Proposals due (individual work)
- Wednesday 11/18 - Final Project Groups assigned, and we set up your group in class
- Wednesday 12/2 - Last day of class - Final Project Check In
- Wednesday 12/9 12:00 pm - Final Project Presentations (our final exam time). Final Projects and the Self Assessment are due at the same time.
Data Exploration
DUE Wednesday 10/21 10:50 am
This section is to be done Individually
Start looking for data now, while we are still learning the tools. Pick a topic you are curious about and look for a data set you can load into Python. Some good places to look:
- Kaggle Datasets - thousands of data sets on almost any topic
- data.gov - US government data
- TidyTuesday - a new, cleaned up data set every week
- UCI Machine Learning Repository
- Pew Research Center - survey data (you need a free account to download) Your major!
- Ask a professor in your field what data they use.
A good data set for this class:
- loads into a DataFrame with
pd.read_csv()orpd.read_excel() - has at least a few hundred rows, and a mix of numerical and categorical variables
- comes with an explanation of what each column means (sometimes called a data dictionary)
- tells you where the data came from and who collected it
Make a folder called FinalProject in your repo and save your data there. NOTE - GitHub will not take a file bigger than 100 MB. If your data is that big, come talk to me.
Data Exploration Deliverable
Make a notebook called DataCheckIn.ipynb in your FinalProject folder. In it:
- Say where your data came from (a link, and who collected it).
- Load your data into a DataFrame.
- Run
.describe()on your data. - Run
.value_counts()on at least one categorical column. - Make one plot.
Push it to your repo. This is a quick look, not a finished analysis! We will use this notebook again during Data Ethics week, so make sure your data really loads.
Project Proposals
This section is to be done individually.
Your project proposal should reflect your own individual work and should not overlap too much with the work of your peers. Project proposals should take the form of a JupyterLab notebook that includes the following sections:
- Introduction and Background for the problem you are interested in.
- What is the question you hope you can answer?
- Why is the question important to you?
- What are you hoping to achieve with the project?
- Description of the data.
- Where did you get your data?
- What data is found in your data set?
- Are there any ethical concerns with using the data or how the data was obtained?
- Is there a public location where the data is freely available? If so where? If not why?
- Initial Exploratory Data Analysis.
- Definition of all variables (or explanation for why you are not considering some variables)
- Descriptive statistics for the data set, counts of the variables, value counts (frequency tables) for each categorical variable of interest.
- Plots that help a reader understand your data.
- Initial analysis to answer initial data questions.
- Proposal for further study.
- What larger questions would you like to try to answer?
- What do you think you might be able to predict with your data?
- Are there any larger impacts that your study might have?
Push your proposal notebook to the FinalProject folder in your repo by Sunday 11/8 11:59pm. Whatever is in your repo at the deadline is what gets graded. If it’s pushed, it’s submitted.
Before you push, restart the kernel and run all the cells (Kernel > Restart Kernel and Run All Cells) to make sure your notebook runs from top to bottom. If it needs a data file, push the data file too, or read the data straight from a web address. Your notebook should contain just as many words and as much description of the problem/results as it does code.
If you already have a group of people you plan to work with - please list their names at the end of the proposal. I read all of the proposals and then put you into groups, usually around similar topics or data.
Final Project Groups
Groups should plan to use class time to meet and work together. We will spend wednesday 11/18 in class getting your group set up.
After groups are assigned, groups will decide on a specific focused set of questions that they hope to answer and a data set (or data sets) that they want to focus on. Try to propose a nice narrative for your study that ties the different questions together.
Recomended group workflow: Each group will work in one shared Google Colab notebook, so everyone can edit the same notebook. Have at least one organizational meeting where you divide up the parts of the work. Every person should contribute to the data analysis and writing portions of the work.
A few Colab tips:
- Share the notebook with everyone in your group, and with me (joanna_bieri@redlands.edu).
- Files you upload to Colab disappear when the session ends. Put your data in Google Drive, or read it straight from a web address.
- Colab already has pandas and plotly installed.
Alternattive Method:
- Each member works in their own notebook to address a component of the overall question that the entire group is answering. The work must still come to together to coherently answer the question your group is trying to answer. You then condense each notebook into main notebook that you turn in. Each member should contribute to the data analysis and writing portions of the work.
Final Project Check in
Wednesday 12/2 is the last day of class. Come to class ready to do a mini presentation of where your project is: your questions, your data, and a few results. Make sure I can see your Colab notebook and your presentation slides before class.
Final Project Due
Final projects should be a carefully constructed notebook in your group’s Colab, shared with me. There should be the following sections:
- Title, Authors, Abstract
- Problem Introduction and Background
- Data Used
- Data Exploration
- Proposed Questions
- Analysis and Results
- Conclusion
Before you push your final version, restart the kernel and run all the cells one more time to make sure everything works.
Presentations
Your group will present your project on Wednesday 12/9 at 12:00pm(noon), our final exam time. Presentations are 10-15 minutes. You have lots of room to be creative with how you present, as long as we walk away knowing your question, what you found, and why it matters.
Some groups decide to walk through their notebook, some create seperate slides, some videos, etc. The goal here is for your exitement and pasion for the topic to shine through. Teach me something new.
Self Assesment
Each person will fill out a short self and peer assesment on Canvas, due at the same time as the final project. You will tell me what you contributed, what you learned and how each person in your group contributed.
AI Policy
The AI poilicy for the final project is the same as for homework. See tthe AI section of the syllabus. The written discussion and interpretation in your project must be your own thinking, in your own words.
Grading
The final project is worth 20% of your course grade. Here is how the 100 points break down:
| Part | Who | Due | Points |
| Data Exploration | Individual | Wednesday 10/21 10:50am | 5 |
| Project Proposal | Individual | Sunday 11/8 11:59pm | 15 |
| Check In (mini presentation) | Group | Wednesday 12/2 In Class | 5 |
| Final Notebook | Group | Wednesday 12/9 12:00pm | 40 |
| Final Presentation | Group | Wednesday 12/9 12:00pm | 20 |
| Self and Peer Assessment | Individual | Wednesday 12/9 12:00pm | 15 |
For most of the rows below Full means all points. Partial means about half. Missing means zero points.
Data Exploration - Rubric (5pts)
1 Point Per
- Data Source
- Data Was loaded
- Data had
.describe() - Data had
.value_counts() - At least one plot
Project Proposal (15 pts)
| Full | Partial | Missing | |
| Question and background (3) | Clear question, and why it matters to you | A topic but no real question | Missing |
| Data description (3) | Where it came from, who collected it, what the variables are | Some of these | Missing |
| Ethics (2) | At least one real ethical concern with this data (or why there isn’t one) | "No concerns" with no reasoning | Missing |
| Exploratory analysis (4) | Descriptive statistics, value counts, and plots, each with a sentence saying what it shows | Output with little or no explanation | Missing |
| Further study (2) | Two or three bigger questions to explore | Vague | Missing |
| Runs top to bottom (1) | Restart and Run All works | NA | Errors |
Check In (5 pts)
| Full | Partial | Missing | |
| Mini Presentation (3) | Show your questions, your data, and a few results | Shows some progress | Not there |
| Notebook draft shared (2) | Single .ipynb notebook and slides share with me before class | Only one of the two | Neither |
Final Notebook (40 pts)
| Full | Partial | Missing | |
| Abstract, introduction, and questions (6) | A reader knows what you asked and why before seeing any code | Questions are there but hard to find | Missing |
| Data (6) | Source, how it was collected, variables, and any cleaning you did, with reasons | Cleaning happens with no explanation | Missing |
| Exploratory analysis and visuals (8) | Plots have titles, labeled axes, and a sentence saying what to notice | Default labels or no explanation | Missing |
| Analysis and results (10) | Each question gets code, output, and a written answer | Output without interpretation, or questions left unanswered | Missing |
| Conclusion and limitations (4) | What you found, what your analysis can’t tell you, what you would do next | Summary only | Missing |
| Ethics (3) | Ethical concerns with your data or analysis, specific to your project | A generic statement | Missing |
| Runs top to bottom (3) | Restart and Run All works in Colab | Runs after small fixes | Does not run |
Presentation (20 pts)
Be Creative! I am grading based on what I walk away with, not the format.
| Full | Partial | |
| Story (6) | We learn your question, what you found, and why it matters | Results without a clear question or takeaway |
| Visuals (6) | Graphs are readable from the back of the room and each one has a point | Hard to read, or too many |
| Everyone takes part (4) | Every group member presents or clearly contributes | Some Members |
| Time (2) | Between 10-15 minutes | Under 8 or over 18 minutes |
Self and Peer Assesement (15) - short quiz on Canvas
- Self Assessment (5 pts, completion): what you contribured (be specific and provide exapmples; eg: "I cleaned the date column and made the three maps in the results section"). Also include one thing you learned, what you would do differently, and whether you used AI and what for.
- Peer rating (10 pts): you rate each person in your group and they rate you. Your points come from what your other group members say about you
- Did their share or more: 10 points
- Did less than their share: 5 points
- Did not contribute or sabataged group: 0 points
Your peer ratings are private. Only I and the graders see them.
Recomended Python Notebook Outline
The following outline is simply a template / suggested format. Feel free to use this format as is or modify if for your needs.