Welcome to my Data Science page!

Check out some of my data analysis and vizualization projects

πŸ“Š KPI Data Dashboard with Google Sheets πŸ”Ž Google Sheets Formulas Pivot Tables

Problem:

Fragmentation: Critical hotel metricsβ€”real-time occupancy, projected arrivals, out-of-order rooms, and variable pricingβ€”were siloed across separate, numbers-only tables.

Blind Spots: Lack of a unified, real-time visual overview risked missed opportunities for optimizing room pricing and resource allocation.

Solution:

Automation: Engineered an automated Google Sheets dashboard to parse, aggregate, and visualize dynamic time-series data, providing management with real-time operational health and proactive pricing insights.

Experience the Live Dashboard!

Daily KPIs by Hour

Experience the Live Dashboard!

Monthly KPIs by Week

🧬 Experimental Groups Data Analysis & Stats πŸ”Ž PySimpleGUI Pandas Matplotlib Numpy Scipy Math

Problem:

Bottleneck: Lab experiments generated multi-group behavioral datasets requiring tedious, manual reformatting before moving to statistical software.

Risk: High susceptibility to human error during manual data manipulation across extensive trial runs.

Visual Gap: Default statistical software produced rigid, aesthetically unappealing charts that lacked publication-ready quality.

Solution:

Automation: Engineered a custom PySimpleGUI desktop application to automate ingestion, group-by-group statistical analysis, and high-fidelity visualization in seconds.

PySimpleGUI

PySimpleGIU img

Graphs generated with SEM & ANOVA tables

Graph and table img

Short video demonstrating the desktop application's functionality

🧩 Experimental Design using Least Different Group Matching πŸ”Ž PySimpleGUI Pandas Itertools Matplotlib re

Problem:

Assignment Complexity: Assigning pair-housed subjects to treatment versus control groups based on baseline data required minimizing initial differences while strictly preserving cage-mate pairs.

Scale: Evaluating thousands of potential group assignment combinations to find the absolute minimum variance was entirely impractical to perform manually.

Solution:

Algorithm & Interface: Developed a PySimpleGUI desktop app leveraging Pandas and Itertools to systematically compute all group permutations, identify optimal minimum-variance pairings, and generate Matplotlib visual verification.

PySimpleGUI

PySimpleGIU img

Graph generated showing hypothetical two-group assignments that are the least different between each other out of all possible group assignments

Line graph img

Short video demonstrating the desktop application's functionality

πŸ’Έ Robinhood Portfolio Insights πŸ”Ž Robin_Stocks API Pandas Numpy Matplotlib

Problem:

Evaluation Gap: Tracking individual stock portfolio performance over time lacked a systematic, automated method for historical benchmarking.

Solution:

API Pipeline: Built a Python automation script using the robin_stocks API to log daily positions into CSV, leveraging Pandas and Matplotlib to benchmark portfolio total return and asset allocation against diversified ETFs.

Script created using the Robin_Stocks Python library and the Robinhood API

  • Top line graph displaying dollar value change over time
  • Line graph displaying percent change over time
  • Bar graph displaying total change currently
  • Pie chart displaying asset class's portfolio distribution
  • Pie chart displaying each asset class's current return on investment

🐁 Wheel Running Data Parsing & Automation πŸ”Ž PySimpleGUI Openpyxl Matplotlib

Problem:

Data Deluge: Running-wheel experiments generated millions of timestamped revolution data points across multiple subjects and extended cycles.

Filtering Bottleneck: Manually filtering valid running bouts (>=3 RPM) and isolating activity between light (inactive) and dark (active) phases was labor-intensive and error-prone.

Solution:

Parsing Engine: Created a PySimpleGUI and Openpyxl desktop application to ingest, filter, and aggregate multi-subject running data by phase in seconds, complete with automated Matplotlib comparative graphs.

PySimpleGUI

PySimpleGIU img

Graph generated showing mean values of different wheel running behaviors during the animal's active 12hr light-cycle versus their inactive 12hr light-cycle.

Running wheel behavior graph img

Short video demonstrating the desktop application's functionality

πŸ’° Visual Insights from Financial Data πŸ”Ž Pandas Numpy Matplotlib

Problem:

Category Inaccuracies: Commercial bank and credit card dashboards relied on broad, rigid spending categories that frequently miscategorized transactions and lacked trend tracking.

Solution:

Custom Pipeline: Developed a Pandas-powered Python script to clean and re-categorize statement CSVs, generating granular Matplotlib stacked bar charts for precise monthly expenditure tracking.

Checking account activity divided into categories by month

checking account data graph

Credit Card expenditures divided into categories by month

credit card data graph

πŸ“„ Text-to-Excel Automation for Activity Data πŸ”Ž Pandas Xlwt Matplotlib re

Problem:

Extraneous Data: Infrared beam-break chambers outputted massive, unstructured text files containing substantial superfluous data alongside target locomotion metrics.

Manual Friction: Manually extracting and formatting relevant time-bins for multiple subjects across multi-hour trials was painfully slow and prone to transcription errors.

Solution:

Text Parser: Built a PySimpleGUI desktop utility using regular expressions and Pandas to parse raw text outputs, normalize data into clean Excel spreadsheets, and auto-generate exploratory time-bin graphs.

PySimpleGUI

PySimpleGIU img

Graph generated showing mean values of all subjects locomotion for each 5min time period over the 1hr trial period along with SEM of each time bin. Graph is charactoristic of the inital high exploritory behavior of a novel environment that tapers off over time.

Activity bar graph img

Short video demonstrating the desktop application's functionality

Click Link to Try My App: PySimpleGUI Emulated on Streamlit

Streamlit Emulation Preview Image

Streamlit preview img
home profile logo