I'm in it for the moment "huh" becomes "oh, that's why."
Statistically normal, personally an outlier.
# next up: machine learning, cloud
$ git status -s
A google-data-analytics # Google Data Analytics · completed
M bsc-data-science # BSc Data Science · UOC · ongoing
M ironhack-bootcamp # Data Analytics Bootcamp · Ironhack · ongoing
redmoon · · Live demo →
Python package that crosses menstrual cycle phases with sleep, HRV and heart rate data from Apple Health exports. Built on 6 years of personal data (76 cycles, 1,153 nights). Wrist temperature rises +0.375°C in luteal phase (p < 0.000001). Random Forest predicts luteal vs non-luteal at F1 = 0.79.
Python pandas scipy sklearn streamlit PyPI · CLI + dashboard + 37 pytest tests + CI
tokpipe · · Live demo → | instapipe ·
· Live demo →
Two published Python packages for social media analytics. Import your TikTok or Instagram exports, clean the data, compute real metrics and visualize what works — no APIs, no scraping.
Python pandas matplotlib PyPI · pip install tokpipe / pip install instapipe
Four independent analyses on fuel pricing: Pearson correlation (r = 0.99), lag cross-correlogram (0–8 weeks), geopolitical event study (Gulf War → Ukraine), and Rocket & Feather asymmetry test.
Python pandas scipy statsmodels · time series · econometrics
Other projects
| Repo | Stack | About |
|---|---|---|
| social-media-analytics | Python · pandas | TikTok vs Instagram — same creator, same period, two algorithms. Normalized KPIs + scorecard |
| sql-social-media-analytics | SQL · SQLite | Same data analyzed with pure SQL — window functions, CTEs, correlated subqueries |
| data-playground → Google Trends | Python · pytrends · yfinance | Crisis search terms vs IBEX 35 — Granger causality, cross-correlogram, 3yr weekly data |
| data-playground → Spotify tristeza | Python · spotipy | Do sad songs perform better? Valence, energy and tempo analyzed across mood playlists |
| data-playground → Vivienda Valencia | Python · pandas | Housing prices before and after the DANA floods — supply shock and displacement effect |
| data-playground → Bitcoin Fear | Python · scipy | Fear & Greed Index vs BTC price — does sentiment lead or lag the market? |
| data-playground → Olay 89% | Python · scipy | Statistical deconstruction of Olay's "89% more hydration" claim — baseline bias, power analysis |
| data-playground → Clarins | Python · scipy | n=24 instrumental studies vs n=388 self-assessment claims — the placebo gap quantified |
| data-playground → Vichy M89 | Python · NCBI API | 5 real PubMed studies vs "100% hydration" marketing claim — methodology quality matrix |
| data-playground → NFT | Python · pandas | NFT market lifecycle: OpenSea volume, floor prices, ETH correlation, bubble factors |
| data-playground → arte-vs-ia | Python · scipy | Handmade premium 2× → 14× since generative AI boom |
| data-playground → tech-salaries | Python · pandas | 89K+ devs — remote work pays 64% more |