This project investigates whether a student's mathematics performance can be predicted with linear regression using demographic and behavioral data, aiming to help educators in supporting students and tailoring educational strategies.
- The main report file is report.qmd.
- You can view the GitHub page rendering of the latest version of the report here.
This section details the step to install the softwares and packages to run the analysis
In your terminal, please run the following commands:
git clone git@github.com:UBC-MDS/dsci-522-group-23.git
or
git clone https://github.com/UBC-MDS/dsci-522-group-23.git
-
Navigate to the root of this project on your computer and run the following command to create and start containers:
docker compose up
-
In the terminal, look for a URL:
http://127.0.0.1:8888/lab
. Copy and paste the URL into your browser and change8888
to8889
manually. -
To regenerate the artifacts (datasets, figures, tables, html file, etc) and rerun the analysis, make sure you are in the root directory of the project (
work
directory of the Docker notebook). Open the Terminal GUI of the Docker Jupyter Lab and run
make clean
make all
- This process will reproduce the analysis artifacts and generate the
report.html
andreport.pdf
files for review. The.html
file can be viewed in any web browser, while the.pdf
file can be opened with any standard PDF reader on your computer.
make tests
-
Shut Down the Container
To stop the container, press Ctrl + C in the terminal where you launched the container using docker compose up.
-
Remove the Container
Once the container is stopped, remove it and its associated resources by running:
docker compose rm
-
conda
: Version 23.9.0 or higher -
conda-lock
: Version 2.5.7 or higher -
Python and packages listed in environment.yml or conda-lock.yml
If you need to change the container, follow this workflow:
-
Add the new dependency or any chagnes in the
emvironment.yml
file. -
Update the lock file: run
conda-lock -k explicit --file environment.yml -p linux-64
to update the conda-linux-64.lock file.
-
Build the Docker image locally to test it and verify the container starts correctly. Make sure you're in the root directory of the project. The command you can use is:
docker build -t <image-tag> --platform=linux/amd64 .
docker run --platform linux/amd64 \ -p 8889:8888 \ -v "$(pwd):/home/jovyan/work" \ --name student-performance-predictor \ <image-name:image-tag>
Replace
<image-tag>
and<image-name>
with the proper values you want to name it -
Push the updated branch to Github. The updated image will be automatically built and pushed to Docker Hub with the GitHub Workflows. The tag of that auto-build image is the same as the commit SHA.
-
Modify the docker-compose.yml file to reference the updated Docker image. Commit the changes to the same branch.
-
Open a PR to merge your branch into the main branch.
The project follows a dual licensing structure:
- The project code is licensed under the MIT License. See the LICENSE.md file for details.
- The project report is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International (CC BY-NC-ND 4.0) license.
If re-using or re-mixing this project, please ensure proper attribution and adherence to the terms of the respective licenses.
Please see the Contributing Guidelines for proper procedures to contribute to our project.