This report is to illustrate my skills in rapid tooling and analysis with Python, SQL, and Tableau. We will also get to peek into my emotional state over the past year through many different life changes.
This report will atempt to serve as a proxy for the actual analysis and tool creation which took place here and simulate what I imagine it is like to create the beginning of a close to 'real' data analysis report.
The emotions tracked are a set of emotions picked by my therapist to record. Initially the first four (anger, sad, happy, fear) were the only ones I was tracking then we eventually added unheard, numb, and disgust.
tracked as 'A', the feeling of frustration, annoyance, or displeasure.
tracked as 'S', the feeling of being unhappy or having grief. This is not to be confused with depression which can sometimes be the lack of any of these emotions.
tracked as 'H', the feeling of joy, excitement, or enthusiasm. I also count feeling 'content' as a lower level of happiness.
tracked as 'F', the feeling of anxious concern, worry, or being afraid and/or scared.
tracked as 'U', an emotion I was displaying in therapy sessions to my therapist, the feeling that no one is listening to me.
tracked as 'N', this emotion can almost be considered the abscense of emotion, another feeling my therapist noticed and which describes the kind of activities I gravitate to that foster a feeling of flow. An example of these kind of activites are playing video games or working out (bicyling, rock climbing), coding. i.e. some form of escapism via inducing a state of flow.
tracked as 'D', categorized as strong disapproval, high distaste. On a personal level, I would also classify this as 'anti-gratefulness.'
Above what is shown is an entry from my journal. I would write the mnemonic 'ASHFUND', each letter corresponding to it's own emotion - Anger, Sad, Happy, Fear, Unheard, Numb, Disgust.
I would track these emotions on a scale of 0 to 10, 0 being the least I had ever felt it, 10 being the most I had ever felt it ever.
I collected and tracked this data over the span of a year.
On the top of the page, you can also see how to mark what the date was in the journal. At first I tried to enter this data directly from the journal into my database through Sqlitebrowser.
This proved extremely tedious and I decided to collect the data in a more readable format before entering it digitally.
Enter the legal pad.
Some of the first anomolies that I came across was when I would write a range, for example - I wouldn't write 1.5, but 1 - 2. In these cases, I recorded these scores as (using the same example from above) as 1.5.
I wrote a number of Python functions to create and update an SQL database where I logged the scores. After cleaning and reformatting the originally entered date structure I ended up with 71 useable records to draw analysis from.
I then moved to Tableau to create visualizations to gain a better understanding of the data and I created views of parts of the data I found interesting.
On average, you can see that Friday I was happiest. I found it interesting to see the higher scores on Sundays and Wednesdays as well.
Above you can see my overall average emotional state for that month. There were many very positive life changes for me in October - I was awarded a data analyst apprenticeship, a mutual end to a relationship where both parties ended up being better off, and I attended a self-help retreat as well.
You can even see that the break up was anticipated by my fear scores in September and October and they drop low until they rise again around the start of the quarantine for Covid-19.
December scores are low because Christmas time has never been my favorite part of the year and all the "New Year's" rage in January tends to confuse and frustrate me because I find celebrating a single moment in our orbit around our sun quite arbitrary.
Above is a sum of my emotion scores by the day of the week. The sumation describes the cumulation of all the scores for particular days of the week. Higher bars mean the collection of scores have higher points for those days and lower bars mean lower scores for those days.
The past two years on Monday I had an weekly meeting with a company I contracted for that would intensely frustrate me. We can also see that my happiness scores are consistent from the first graph I presented above as well, on Sundays and Wednesdays.
Something interesting presented here is the higher the cumulative score for happiness is on a certain day, we see higher scores for the other emotions as well.
To keep diving into the days of the week, this graph shows the highest recorded scores by day, but each set of scores is not from the same day.
Below we can see my average emotion scores per day of the week.
To no surprise, my highest average score for happiness is on Friday but we can also see that the pattern from above continues, where the higher my happiness score is, the more it pulls the other emotions as well.
This is something my therapist and I have classified as emotional hangover. When feeling an extreme amount of one emotion, the mind balances and can sometimes tip easily into other emotions.
Below I put together a set of six scatter plots with Python's matplotlib library that compare my happiness scores against the scores of the other tracked emotions.
We can see right away, four of the plots loosely show a negative correlation with happiness, disgust, anger, unheard, and sad.
However, we can also see in the remaining two graphs that there is positive mirrored loose correlation with happiness between the tracked emotions of numb and fear.
Numb and happiness correlate because I enjoy activities that require me to use all of my senses or all of my concentration. The meaning of fear correlating with happiness is a little less obvious at first but can be explained simply.
The two feelings of anxiety and excitement can feel wildly different but chemically, inside your brain, the two feelings are exactly the same. The only difference is the subject's decision to either be anxious or excited about the stimulus.
I first read this in Superbetter, the book that originally inspired me to keep track of my emotions. In it, the author describes a tip to help anxious people take on their anxiety straight on.
When one is feeling anxious, instead of giving into that anxiety and letting it become the perspective that they process all next incoming stimulus, if they instead tell themselves, "I'm excited, I'm excited, I'm excited" they can actually change their own perspective and become excited instead of anxious. This is a technique I still use to this day and I have augmented to help with other aspects of my life as well. For example, if I find myself complaining about something, I immediately (try to) stop that narrative and tell myself that I am grateful for whatever it was I was complaining about.
Fear and happiness team up here in my records most likely because if my fear was ever heightened enough, I did my best to use the above technique to thwart the oncoming anxiety and turn it into excitement.
To reiterate, the purpose of this project was to demonstrate my ability to take a unstructured set of data and rapidly build it into a set of visualizations to gain insights in as short amount of time as possible with Python, Tableau, and SQL as my toolset.
From the analysis we learned many things about my emotional state and how it's connected all around to days of the week and even other emotions.
What I learned is if I kept a more consistent practice of tracking my emotions, I'd have a more accurate dataset to work with. Going forward, I have built tools that make it easy to enter this data on a more regular basis so as to keep a closer eye on future findings.
At least one emotion tracking entry a day for around 70 entries in a year is noncomprehensive. There are spans of time where I did not track my emotions at all. During these spans, I can personally provide insight that some of these days, I did not feel up to writing down what my emotions were.
The largest missing factor here was something I learned not long ago. I was recently diagnosed with diabetes, and depression and frequent mood changes can be partner to diabetes if blood glucose levels are not maintained well enough.
These entries came from a journal and I also keep an electronic journal of which I have over 200+ entries during the time span I tracked these emotion scores. I have always had an interest in NLP (natural language processing) and it would be incredibly fascinating to me to find patterns between my emotion scores and the kind of language I am using to process my days and begin to narrow down on the subjects that are giving me the most happiness or anger, or what is giving me anxiety versus what's making me sad.
Also, after being diagnosed, I am accumulating a growing pile of data from myself about my blood glucose levels and how they are affected by the things I consume and the activites I partake in. Eventually I would like separate databases where I have my emotions tracked, my sugar levels, what I am eating and what I am writing to monitor all parts of my mental state and be able to pinpoint it to specific meals and activities and how those things affect my body and my mind.
Thank you for reading!