MENU
NumC

NOV - DEC 2021

In the final project for CS 61C (Computer Architecture/Machine Structures) at UC Berkeley, I created a package that performs matrix operations in a similar fashion to the popular Python library NumPy. I brought together my knowledge of C, data-level parallelism, and multi-threading to achieve high performance, especially in matrix multiplication operations.

Skills & tools: C, OpenMP, Intel Intrinsics, SIMD, multi-threading, data parallelism

NFL Big Data Bowl 2021

NOV 2020 - JAN 2021

For this years rendition of their annual analytics competition, the NFL asked contestants to uncover what makes a successful defense against passing plays. We suggest a custom-built clustering algorithm for NFL football plays, and provide a subsequent analysis of defensive play efficacy.

Skills & tools: Python, clustering, algorithm design, data cleaning/processing

Arcade Game: Nutstradamus

NOV - DEC 2020

In this capstone project for CS 61B (Data Structures & Algorithms) at UC Berkeley, my friend Jason Diwa and I built a tile-based game in Java. The game is complete with a custom algorithm to pseudo-randomly generate the playing field and an AI equipped with the A* algorithm to attempt to beat the human player.

Skills & tools: Managing complexity, Java, Git, UI design

Spam or Ham?

NOV 2020

The final project for DATA 100 (Principles & Techniques of Data Science) at UC Berkeley involved building a logistic regression model in Python to predict whether an email should go to the user's inbox or spam folder. I deployed natural language processing tools for feature engineering and cross validation to optimize model performance. My final model had over 97% accuracy.

Skills & tools: Logistic regression, Python, Natural Language Toolkit (NLTK)

NBA PPG Prediction

FEB - MAY 2020

As a project for the Berkeley Data Science Society, three other members and I built and presented a model to predict NBA players’ average points per game (PPG) scored. We deployed hyperparameter tuning and cross validation techniques, and achieved an average error of under 2 points per game.

Skills & tools: Python, feature engineering, hyperparameter tuning

PGA Tour EDA

OCT - DEC 2019

I performed exploratory data analysis (EDA) on PGA Tour data from 2017 to determine what aspects of a player's game have the largest impact on player season earnings.

Skills & tools: Python, data processing, feature creation, data visualization

PDF Merger/Splitter

DEC 2019 - JAN 2020

I used the PyPDF2 library to assist with the actual splitting/merging of PDF documents, then created a GUI for easier use using Tkinter.

Skills & tools: Python, object-oriented programming, GUIs

Titanic Survival Prediction

AUG - OCT 2019

For my first data science project, I elected to work off of the Titanic dataset from the popular Kaggle competition. I employed binary classification and rudimentary machine learning techniques to create a model to predict survival of passengers on the RMS Titanic.

Skills & tools: Python, data cleaning, machine learning

Foundation Website Template

MAY - JUNE 2019

Everyone starts somewhere, and I more or less started here. This project involved using Zurb's Foundation framework for responsive design to create a generic website template. This was my first major coding project, and introduced me to concepts like web design, UI/UX, and project workflow. The template incorporates responsive design, and is optimized for mobile.

Skills & tools: HTML5, CSS, javascript, Foundation