Putting my heart online
For the past three months I have been capturing how fast my heart beats. It's been fascinating to see how my body responds to the changes in the environment I am in. And while, I don't have strong conclusions to draw yet, this experiment has allowed me to develop a baseline on what is normal for me. My median heart tends to be lower on the weekends (60 on both Saturday and Sunday), and highest on Thursdays (63). My median heart rate drops to it's lowest between 4am and 5am in the morning when I am deep asleep, and peaks between 3pm and 4pm in the afternoon, presumably when I am in meetings at work. The lowest my heart rate got during the last 3 months is 41 BPM and the highest 154 BPM.
Median heart rate, broken out by hour
Getting the data
I have been wearing a Basis watch that takes a sample every minute, logging my heart rate, skin temperature, sweat level, and the number of calories I burnt. While, Basis doesn't allow you to export this information directly, I was able to extract my data with the help of Erik van het Hof's library. Roughly, 35% of the values I recorded were NAs, either because I wasn't wearing the watch at the time or it failed to log my heart rate. When that happens, I am taking the liberty of using the last recorded value.
Integrating with Moves App While looking at heart rate as a standalone measure was interesting, it lacked the context of what stimulated the response. I merged my Basis and Moves data to break down my heart rate by location. But that's a story for another time. For now, I cleaned up my data using R and did some preliminary analysis.
Heart rate by location
Without context the raw physiometric measures aren't particularly insightful. However, it's a deeply personal subject, and even though I haven't been able to glean any non obvious conclusions from the data so far, this is the first of a series of visualizations where my focus will be on creating a visceral response.