Programming and Analytics

Analytics Projects

Modeling Happiness

As part of my Stat 435 class, I created a model that can predict the happiness level in a country based on factors such as the log of their GDP, percieved corruption, freedom, and generosity. For this project, I performed the tasks in Python and used libraries such as statsmodels, numpy, and matplotlib. The project used multiple linear regression techniques, as well as relevant analysis of the model through residual plots, leverage and outlier investigation, Variance Inflation Factor checks for multicollinearity, Q-Q plots, and more.

Researching Relationship Between Sleep and GPA

As part of my Data 115 class, I investigated whether there was evidence of a relationship between the amount of sleep students at my school got each night and their overall GPA. For this project, I used R to conduct linear regressions and perform relevant analysis of the model. This included looking at Q-Q plots, residual plots, and regression outputs to analyze the performance and fit of the model. I also performed some supplementary analysis of the data, such as analysis of the distributions for the sleep and GPA data.

Programming Projects

Car Seat to Prevent Hot Car Deaths in Children (C)

Car Seat

As a project for the International Science and Engineering Fair (ISEF), I developed a car seat that uses a harness of Arduino components to alert parents and authorities if they leave their child in a hot car. I worked in C for this project, and combined inputs from temperature gauges and motion sensor components to determine if there was a child left in the seat in dangerous temperatures, which then notified parents and authorities via text message of the situation. The project won second place in the Electrical Engineering category, won the Women in STEM award, and advanced to the Northwest Science Expo (NWSE).

Connect-4 Game Board and AI (Python)

Connect-4 AI Gameplay

As part of my CS 121 class, I created an AI to play Connect-4 with. The AI's skill level can be changed by adjusting how many moves ahead it can consider. It also includes a game board interface for the user to play with. The program conducts the game according to the rules of Connect-4 and includes an AI response to every player move until the game ends when someone wins or the board is full. There is also a two-player version without AI. An example of the gameplay is shown.

Conway's Game of Life (Python)

Conway's Game of Life Gameplay

As part of my Data 219 class, I created a program that allows the user to experience John Conway's Game of Life. The Game of Life forms mathematical patterns in a hypothetical ecosystem. The user selects cells like shown, and then the game board changes according to the rules of the Game of Life. A cell with less than two live (red) neighbors dies of loneliness, a cell with more than three live neighbors dies due to overpopulation, and all other cells maintain their state. The game produces interesting and intricate patterns for users to experiment with.

Wordle Game and Bot (Java)

Wordle Logo

As part of my CS 122 class, I created a working Wordle game that takes a file or array of words to guess and selects one at random according to any given constraints (such as length or word frequency). The player can input guesses and receive an output showing correctly placed letters, incorrectly placed letters, and letters that are not in the puzzle. I also created a bot to guess the daily word as efficiently as possible. The bot uses a combination of stochastic ordering and hint-based elimination to make its guesses, and often is able to win the game in three guesses.