{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Sad songs\n", "\n", "This is a replication of the [fitteR happieR](http://rcharlie.com/2017-02-16-fitteR-happieR/) post which attempted to find the most depressing Radiohead song.\n", "\n", "I've redone it here, using tools available in TM351.\n", "\n", "## Contents\n", "* [Analysis](#analysis)\n", "* [Sentiment](#sentiment)\n", "* [Gloom index](#gloomindex)\n", "* [Revised gloom index](#revisedgloomindex)\n", "* [Contrasting songs](#valencenegcontrast)\n", "* [Gloom per album](#gloomperalbum)\n", "* [Complexity per album](#complexityovertime)\n", "\n", "### [Conclusion](#conclusion)" ] }, { "cell_type": "code", "execution_count": 250, "metadata": { "run_control": { "read_only": false } }, "outputs": [], "source": [ "import pandas as pd\n", "import numpy as np\n", "import matplotlib\n", "import matplotlib.pyplot as plt\n", "%matplotlib inline \n", "import urllib.request\n", "import urllib.parse\n", "import urllib.error\n", "import json\n", "import base64\n", "import configparser\n", "from bs4 import BeautifulSoup\n", "import re\n", "import pymongo\n", "from datetime import datetime\n", "import time\n", "import collections\n", "import editdistance\n", "import math\n", "from scipy.spatial import ConvexHull\n", "from pandas.plotting import scatter_matrix" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We'll use MongoDB to store the data, to save keeping it all in memory, and mean we don't have to recapture all the data to to a different analysis." ] }, { "cell_type": "code", "execution_count": 251, "metadata": {}, "outputs": [], "source": [ "# Open a connection to the Mongo server\n", "client = pymongo.MongoClient('mongodb://localhost:27017/')" ] }, { "cell_type": "code", "execution_count": 252, "metadata": {}, "outputs": [], "source": [ "# Create a database and a collections within it.\n", "songs_db = client.songs\n", "albums = songs_db.albums\n", "unfiltered_tracks = songs_db.tracks\n", "genius_tracks = songs_db.gtracks" ] }, { "cell_type": "code", "execution_count": 253, "metadata": {}, "outputs": [], "source": [ "interesting_pipe = [{'$match':{'ignore': {'$exists': False}}}]" ] }, { "cell_type": "code", "execution_count": 254, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['system.views',\n", " 'gtracks',\n", " 'system.indexes',\n", " 'sentiments',\n", " 'albums',\n", " 'tracks',\n", " 'interesting_tracks']" ] }, "execution_count": 254, "metadata": {}, "output_type": "execute_result" } ], "source": [ "songs_db.collection_names()" ] }, { "cell_type": "code", "execution_count": 255, "metadata": {}, "outputs": [], "source": [ "# interesting_pipeline = \n", "# db.runCommand( { create: , viewOn: , pipeline: } )\n", "# songs_db.create_collection('interesting_tracks', viewOn=songs_db.tracks, pipeline=interesting_pipe)\n", "if 'interesting_tracks' not in songs_db.collection_names():\n", " songs_db.command(\"create\", \"interesting_tracks\",\n", " viewOn='tracks', \n", " pipeline=interesting_pipe)" ] }, { "cell_type": "code", "execution_count": 256, "metadata": {}, "outputs": [], "source": [ "tracks = songs_db.interesting_tracks" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "API keys and the like are kept in a configuration file, which is read here.\n", "\n", "You'll need to create a web API key for Spotify and Genius. " ] }, { "cell_type": "code", "execution_count": 257, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "['app_name', 'client_id', 'client_secret', 'redirect_uri', 'token']" ] }, "execution_count": 257, "metadata": {}, "output_type": "execute_result" } ], "source": [ "config = configparser.ConfigParser()\n", "config.read('secrets.ini')\n", "[k for k in config['genius']]" ] }, { "cell_type": "code", "execution_count": 258, "metadata": {}, "outputs": [], "source": [ "## How to write the config file. Fill in the details, and create a different config section for Spotify.\n", "# config['genius'] = {}\n", "# config['genius']['app_name'] = 'xxx'\n", "# config['genius']['client_id'] = 'xxx'\n", "# config['genius']['client_secret'] = 'xxx'\n", "# config['genius']['token'] = 'xxx'\n", "# with open('secrets.ini', 'w') as configfile:\n", "# config.write(configfile)" ] }, { "cell_type": "code", "execution_count": 259, "metadata": {}, "outputs": [], "source": [ "stones_id = '22bE4uQ6baNwSHPVcDxLCe'\n", "beatles_id = '3WrFJ7ztbogyGnTHbHJFl2'\n", "radiohead_id = '4Z8W4fKeB5YxbusRsdQVPb'" ] }, { "cell_type": "code", "execution_count": 260, "metadata": {}, "outputs": [], "source": [ "# radiohead_id = albums.find_one({'artist_name': 'Radiohead'})['artist_id']\n", "# radiohead_id" ] }, { "cell_type": "code", "execution_count": 261, "metadata": {}, "outputs": [], "source": [ "# beatles_id = albums.find_one({'artist_name': 'The Beatles'})['artist_id']\n", "# beatles_id" ] }, { "cell_type": "code", "execution_count": 262, "metadata": {}, "outputs": [], "source": [ "# stones_id = albums.find_one({'artist_name': 'The Rolling Stones'})['artist_id']\n", "# stones_id" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Analysis\n", "Finally, we can get to the analysis of the data!\n", "\n", "First, what are the lowest-valence songs, and what's the distribution of valences?\n", "\n", "* [Top](#top)" ] }, { "cell_type": "code", "execution_count": 263, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namenamevalence
01CEZV1nYaEeqhWz73HKF3gThe Rolling StonesIntro - Live0.0263
11AVrv7FD10FoKW38oBiKRgRadioheadBloom (Blawan Rmx)0.0327
24rkGGQEqxHIXVJ4oXjOHgFGeorge MartinSea Of Holes - Remastered0.0357
30ttMfoND7IQqFSMVOPkELCThe BeatlesBlue Jay Way - Remastered 20090.0378
453RYTfkLiyZuUZHwJC3WmmRadioheadWe Suck Young Blood0.0378
501ZpFhrMMqKPVCwyqXneVpRadioheadTrue Love Waits0.0379
666Pyms4pYaHEcPHZ7DdMbERadioheadTKOL (Altrice Rmx)0.0382
73gKuywOm38axM8sJGq6LaqRadioheadMK 10.0389
82uYSbsxAMmK1awUl06T7ixRadioheadMK 20.0390
975YUnz58ajMo2VIIuUFvOVRadioheadThe Tourist0.0398
100COiZ7ncho2yi4HotbzgPvRadioheadMotion Picture Soundtrack0.0435
110tKuiKb2mazZYdA6fPP7kIRadioheadGood Evening Mrs Magpie (Modeselektor RMX)0.0438
124gq2bc2770XvbJdEtfUbmwRadioheadGo Slowly0.0439
1349JPfRfsAfjWYRN6lbC3myGeorge MartinPepperland Laid Waste - Remastered0.0462
143uxhyRdWVXp7GQvERQl6fARadioheadVideotape0.0466
152PbwmAMaxIBIWis8XLViatGeorge MartinSea Of Monsters - Remastered0.0489
1629yXMFKIrY1fFY4DYBVZCuRadioheadLife In a Glasshouse0.0497
173cual6JOG286qZJmCxKRATRadioheadTinker Tailor Soldier Sailor Rich Man Poor Man...0.0507
180agoaPIy92gPZ6zRhqXarEThe BeatlesTomorrow Never Knows - Remastered0.0534
195olWalQH1oVza5D6xJg4oXRadioheadSail To The Moon0.0540
\n", "
" ], "text/plain": [ " _id artist_name \\\n", "0 1CEZV1nYaEeqhWz73HKF3g The Rolling Stones \n", "1 1AVrv7FD10FoKW38oBiKRg Radiohead \n", "2 4rkGGQEqxHIXVJ4oXjOHgF George Martin \n", "3 0ttMfoND7IQqFSMVOPkELC The Beatles \n", "4 53RYTfkLiyZuUZHwJC3Wmm Radiohead \n", "5 01ZpFhrMMqKPVCwyqXneVp Radiohead \n", "6 66Pyms4pYaHEcPHZ7DdMbE Radiohead \n", "7 3gKuywOm38axM8sJGq6Laq Radiohead \n", "8 2uYSbsxAMmK1awUl06T7ix Radiohead \n", "9 75YUnz58ajMo2VIIuUFvOV Radiohead \n", "10 0COiZ7ncho2yi4HotbzgPv Radiohead \n", "11 0tKuiKb2mazZYdA6fPP7kI Radiohead \n", "12 4gq2bc2770XvbJdEtfUbmw Radiohead \n", "13 49JPfRfsAfjWYRN6lbC3my George Martin \n", "14 3uxhyRdWVXp7GQvERQl6fA Radiohead \n", "15 2PbwmAMaxIBIWis8XLViat George Martin \n", "16 29yXMFKIrY1fFY4DYBVZCu Radiohead \n", "17 3cual6JOG286qZJmCxKRAT Radiohead \n", "18 0agoaPIy92gPZ6zRhqXarE The Beatles \n", "19 5olWalQH1oVza5D6xJg4oX Radiohead \n", "\n", " name valence \n", "0 Intro - Live 0.0263 \n", "1 Bloom (Blawan Rmx) 0.0327 \n", "2 Sea Of Holes - Remastered 0.0357 \n", "3 Blue Jay Way - Remastered 2009 0.0378 \n", "4 We Suck Young Blood 0.0378 \n", "5 True Love Waits 0.0379 \n", "6 TKOL (Altrice Rmx) 0.0382 \n", "7 MK 1 0.0389 \n", "8 MK 2 0.0390 \n", "9 The Tourist 0.0398 \n", "10 Motion Picture Soundtrack 0.0435 \n", "11 Good Evening Mrs Magpie (Modeselektor RMX) 0.0438 \n", "12 Go Slowly 0.0439 \n", "13 Pepperland Laid Waste - Remastered 0.0462 \n", "14 Videotape 0.0466 \n", "15 Sea Of Monsters - Remastered 0.0489 \n", "16 Life In a Glasshouse 0.0497 \n", "17 Tinker Tailor Soldier Sailor Rich Man Poor Man... 0.0507 \n", "18 Tomorrow Never Knows - Remastered 0.0534 \n", "19 Sail To The Moon 0.0540 " ] }, "execution_count": 263, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pd.DataFrame(list(tracks.find({}, \n", " ['artist_name', 'name', 'valence'], \n", " sort=[('valence', pymongo.ASCENDING)], limit=20)))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Just the Beatles songs." ] }, { "cell_type": "code", "execution_count": 264, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namenamevalence
800ttMfoND7IQqFSMVOPkELCThe BeatlesBlue Jay Way - Remastered 20090.0378
1140agoaPIy92gPZ6zRhqXarEThe BeatlesTomorrow Never Knows - Remastered0.0534
766ZrPbHp9kRmQj1tGLvna8UThe BeatlesRevolution 9 - Remastered0.1010
2193ZFPe2aiLQuEfDxSqQstZpThe BeatlesA Day In The Life - Remix0.1330
2061Spno7RVP9d3wszxojPJXZThe BeatlesPenny Lane - Take 6 / Instrumental0.1470
02ucFulEWapRAmTn7l6f5Q7The BeatlesWild Honey Pie - Remastered0.1520
334cLoL5KPfE1hAwfsO84FX7The BeatlesBecause - Remastered0.1620
7127YZJHyTTDIurMqDu1v2efThe BeatlesLong, Long, Long - Remastered0.1630
1003ZFBeIyP41HhnALjxWy1pRThe BeatlesA Day In The Life - Remastered0.1750
772tf8ljpWPmXNIFgRVhEuJgThe BeatlesGood Night - Remastered0.1780
\n", "
" ], "text/plain": [ " _id artist_name name \\\n", "80 0ttMfoND7IQqFSMVOPkELC The Beatles Blue Jay Way - Remastered 2009 \n", "114 0agoaPIy92gPZ6zRhqXarE The Beatles Tomorrow Never Knows - Remastered \n", "76 6ZrPbHp9kRmQj1tGLvna8U The Beatles Revolution 9 - Remastered \n", "219 3ZFPe2aiLQuEfDxSqQstZp The Beatles A Day In The Life - Remix \n", "206 1Spno7RVP9d3wszxojPJXZ The Beatles Penny Lane - Take 6 / Instrumental \n", "0 2ucFulEWapRAmTn7l6f5Q7 The Beatles Wild Honey Pie - Remastered \n", "33 4cLoL5KPfE1hAwfsO84FX7 The Beatles Because - Remastered \n", "71 27YZJHyTTDIurMqDu1v2ef The Beatles Long, Long, Long - Remastered \n", "100 3ZFBeIyP41HhnALjxWy1pR The Beatles A Day In The Life - Remastered \n", "77 2tf8ljpWPmXNIFgRVhEuJg The Beatles Good Night - Remastered \n", "\n", " valence \n", "80 0.0378 \n", "114 0.0534 \n", "76 0.1010 \n", "219 0.1330 \n", "206 0.1470 \n", "0 0.1520 \n", "33 0.1620 \n", "71 0.1630 \n", "100 0.1750 \n", "77 0.1780 " ] }, "execution_count": 264, "metadata": {}, "output_type": "execute_result" } ], "source": [ "beatles_df = pd.DataFrame(list(tracks.find({'artist_id': beatles_id}, \n", " ['artist_name', 'name', 'valence'])))\n", "beatles_df.sort_values('valence').head(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And plot the valences.." ] }, { "cell_type": "code", "execution_count": 265, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 265, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nUiEMdEkqxP8BKg8HqH1B13QAAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "beatles_df['valence'].hist()" ] }, { "cell_type": "code", "execution_count": 266, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namenamevalence
1941CEZV1nYaEeqhWz73HKF3gThe Rolling StonesIntro - Live0.0263
2804EllMMamxvLvwvOQLsyc9WThe Rolling StonesBrown Sugar - Live0.1030
141tEdH58k6r4CvjEhmxxbMCThe Rolling StonesJumpin’ Jack Flash - Live0.1200
701dTX9ivyAhFJLR1f2pk9KvThe Rolling StonesOut Of Tears - Remastered0.1370
139388ll2SEjDO9LZIXXyKtjhThe Rolling StonesLittle Rain0.1570
2031tiyUANzZamsPZlHhZBbOdThe Rolling StonesYou Can’t Always Get What You Want - Live0.1600
611Wfdb6cNBPdpoZYniHfL7oThe Rolling StonesAlways Suffering - Remastered0.1610
2534HjKfesqhmkthgJg738g3AThe Rolling StonesConnection - Live0.1610
2420q26ITWa4vXhoV5jvRCZXZThe Rolling StonesIt's All Over Now - Live0.1650
641qEGxs60ntxuenj27BnRkFThe Rolling StonesHow Can I Stop - Remastered0.1670
\n", "
" ], "text/plain": [ " _id artist_name \\\n", "194 1CEZV1nYaEeqhWz73HKF3g The Rolling Stones \n", "280 4EllMMamxvLvwvOQLsyc9W The Rolling Stones \n", "14 1tEdH58k6r4CvjEhmxxbMC The Rolling Stones \n", "70 1dTX9ivyAhFJLR1f2pk9Kv The Rolling Stones \n", "139 388ll2SEjDO9LZIXXyKtjh The Rolling Stones \n", "203 1tiyUANzZamsPZlHhZBbOd The Rolling Stones \n", "61 1Wfdb6cNBPdpoZYniHfL7o The Rolling Stones \n", "253 4HjKfesqhmkthgJg738g3A The Rolling Stones \n", "242 0q26ITWa4vXhoV5jvRCZXZ The Rolling Stones \n", "64 1qEGxs60ntxuenj27BnRkF The Rolling Stones \n", "\n", " name valence \n", "194 Intro - Live 0.0263 \n", "280 Brown Sugar - Live 0.1030 \n", "14 Jumpin’ Jack Flash - Live 0.1200 \n", "70 Out Of Tears - Remastered 0.1370 \n", "139 Little Rain 0.1570 \n", "203 You Can’t Always Get What You Want - Live 0.1600 \n", "61 Always Suffering - Remastered 0.1610 \n", "253 Connection - Live 0.1610 \n", "242 It's All Over Now - Live 0.1650 \n", "64 How Can I Stop - Remastered 0.1670 " ] }, "execution_count": 266, "metadata": {}, "output_type": "execute_result" } ], "source": [ "stones_df = pd.DataFrame(list(tracks.find({'artist_id': stones_id}, \n", " ['artist_name', 'name', 'valence'])))\n", "stones_df.sort_values('valence').head(10)" ] }, { "cell_type": "code", "execution_count": 267, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 267, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXQAAAD8CAYAAABn919SAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAD7JJREFUeJzt3X+MZXV5x/H3I0iljLIoekMW2tGIthsm/mBiMCbtjKih\n0AhJDcFguyQbN2prm3Sbdlv/sa1NIA1am5C0m2pcm+iAppYNaK1dmZIaQXeLOiixIl1btutSddk4\nllpXn/5xD2QlM9wzP+45w3Pfr2Sz59xzzj3P8925nz1z7rnnRmYiSXr6e0bfBUiSNoeBLklFGOiS\nVISBLklFGOiSVISBLklFGOiSVISBLklFGOiSVMSZXe7s/PPPz+np6RWX/eAHP+Ccc87pspwtxf4n\nu39wDCa9f1h9DA4fPvydzHz+qO07DfTp6WkOHTq04rLFxUXm5ua6LGdLsf/J7h8cg0nvH1Yfg4j4\nVpvtPeUiSUUY6JJUhIEuSUUY6JJUhIEuSUUY6JJUhIEuSUUY6JJUhIEuSUV0+klRaZTpvXf2st8j\nN17Vy36lzeQRuiQVYaBLUhEGuiQV0eocekQcAb4P/Bg4lZmzEfFc4FZgGjgCXJuZJ8ZTplTX4+8b\n7Jk5xQ0dvofg+wb1rOUIfT4zX56Zs838XuBgZl4MHGzmJUk92cgpl6uB/c30fuCajZcjSVqvtoGe\nwD9GxOGI2N08NsjMY830t4HBplcnSWotMnP0ShHbM/NoRLwA+AzwTuBAZm47bZ0TmXneCtvuBnYD\nDAaDSxcWFlbcx/LyMlNTU+vrogD7H/a/dPRkL/uf2X5uL/sFnuh5cDYcf6y7/fbZ80om/TUAq4/B\n/Pz84dNOd6+qVaD/1AYR7waWgbcCc5l5LCIuABYz86VPte3s7Gz6FXQrs/9h/5P4waLT3xS9eam7\nz/pttTdFJ/01AE/5FXStAn3kKZeIOCcinv34NPAG4H7gALCzWW0ncHv7siVJm63N4cAA+EREPL7+\nRzLzHyLii8BtEbEL+BZw7fjKlCSNMjLQM/Mh4GUrPP5d4PJxFCVJWjs/KSpJRRjoklSEgS5JRRjo\nklSEgS5JRRjoklSEgS5JRRjoklSEgS5JRRjoklSEgS5JRRjoklSEgS5JRRjoklSEgS5JRRjoklSE\ngS5JRRjoklSEgS5JRRjoklSEgS5JRRjoklSEgS5JRRjoklSEgS5JRRjoklSEgS5JRRjoklSEgS5J\n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\nSUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "stones_df['valence'].hist()" ] }, { "cell_type": "code", "execution_count": 268, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namenamevalence
141AVrv7FD10FoKW38oBiKRgRadioheadBloom (Blawan Rmx)0.0327
7653RYTfkLiyZuUZHwJC3WmmRadioheadWe Suck Young Blood0.0378
5001ZpFhrMMqKPVCwyqXneVpRadioheadTrue Love Waits0.0379
1366Pyms4pYaHEcPHZ7DdMbERadioheadTKOL (Altrice Rmx)0.0382
203gKuywOm38axM8sJGq6LaqRadioheadMK 10.0389
212uYSbsxAMmK1awUl06T7ixRadioheadMK 20.0390
11375YUnz58ajMo2VIIuUFvOVRadioheadThe Tourist0.0398
1010COiZ7ncho2yi4HotbzgPvRadioheadMotion Picture Soundtrack0.0435
150tKuiKb2mazZYdA6fPP7kIRadioheadGood Evening Mrs Magpie (Modeselektor RMX)0.0438
624gq2bc2770XvbJdEtfUbmwRadioheadGo Slowly0.0439
\n", "
" ], "text/plain": [ " _id artist_name \\\n", "14 1AVrv7FD10FoKW38oBiKRg Radiohead \n", "76 53RYTfkLiyZuUZHwJC3Wmm Radiohead \n", "50 01ZpFhrMMqKPVCwyqXneVp Radiohead \n", "13 66Pyms4pYaHEcPHZ7DdMbE Radiohead \n", "20 3gKuywOm38axM8sJGq6Laq Radiohead \n", "21 2uYSbsxAMmK1awUl06T7ix Radiohead \n", "113 75YUnz58ajMo2VIIuUFvOV Radiohead \n", "101 0COiZ7ncho2yi4HotbzgPv Radiohead \n", "15 0tKuiKb2mazZYdA6fPP7kI Radiohead \n", "62 4gq2bc2770XvbJdEtfUbmw Radiohead \n", "\n", " name valence \n", "14 Bloom (Blawan Rmx) 0.0327 \n", "76 We Suck Young Blood 0.0378 \n", "50 True Love Waits 0.0379 \n", "13 TKOL (Altrice Rmx) 0.0382 \n", "20 MK 1 0.0389 \n", "21 MK 2 0.0390 \n", "113 The Tourist 0.0398 \n", "101 Motion Picture Soundtrack 0.0435 \n", "15 Good Evening Mrs Magpie (Modeselektor RMX) 0.0438 \n", "62 Go Slowly 0.0439 " ] }, "execution_count": 268, "metadata": {}, "output_type": "execute_result" } ], "source": [ "radiohead_df = pd.DataFrame(list(tracks.find({'artist_id': radiohead_id}, \n", " ['artist_name', 'name', 'valence'])))\n", "radiohead_df.sort_values('valence').head(10)" ] }, { "cell_type": "code", "execution_count": 269, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 269, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "radiohead_df['valence'].hist()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And now plot both on the same chart, to clearly show that Radiohead songs are generally lower-valence than The Beatles." ] }, { "cell_type": "code", "execution_count": 370, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 370, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "beatles_df['valence'].hist(alpha=0.5, color='blue')\n", "stones_df['valence'].hist(alpha=0.5, color='red')\n", "radiohead_df['valence'].hist(alpha=0.5, color='green')" ] }, { "cell_type": "code", "execution_count": 377, "metadata": {}, "outputs": [ { "data": { "image/png": "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\ngg0AAAAASUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ax = beatles_df['valence'].hist(alpha=0.75, color='blue')\n", "radiohead_df['valence'].hist(alpha=0.75, color='green')\n", "ax.set_facecolor(\"lightslategray\")" ] }, { "cell_type": "code", "execution_count": 376, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "ax = beatles_df['valence'].plot.kde(color='blue')\n", "radiohead_df['valence'].plot.kde(color='green')\n", "ax.set_facecolor(\"lightslategray\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Sentiment\n", "We can now look at the sentiment scores for the lyrics. We start by looking at the most negative songs for each artist.\n", "\n", "* [Top](#top)" ] }, { "cell_type": "code", "execution_count": 271, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namenamenegneutralposvalence
543VgxeWOGdUYvtX1j8C9VyVThe BeatlesI'm So Tired - Remastered0.8924890.1463020.1075110.717
286gLmFcRwyQCQT23Df2Re9GThe BeatlesI Want You (She's So Heavy) - Remastered0.8807600.0918190.1192400.420
736ZrPbHp9kRmQj1tGLvna8UThe BeatlesRevolution 9 - Remastered0.8720560.1723220.1279440.101
1523EbGioQyKyf4dycuiPOg3kThe BeatlesEverybody's Trying To Be My Baby - Remastered0.8669850.9143320.1330150.943
194311wT21Et0q3vepFwXjTuThe BeatlesOne After 909 - Remastered0.8657370.1584700.1342630.888
1143QbhVaulXxTyuAxHY3Pa5NThe BeatlesYou Won't See Me - Remastered0.8645850.2472260.1354150.473
1613Aqo28W4LLAolYpN3duVJlThe BeatlesI'll Cry Instead - Remastered0.8637720.1605160.1362280.960
583OSi8ehmSWLTD5KatlzX8rThe BeatlesDon't Pass Me By - Remastered0.8578310.1206760.1421690.946
1003wAOX1N5M0ta3QNsokmhJVThe BeatlesI'm Only Sleeping - Remastered0.8576510.2698000.1423490.698
1381e0hllQ23AG0QGFgezgLOqThe BeatlesYesterday - Remastered0.8521560.1327960.1478440.315
\n", "
" ], "text/plain": [ " _id artist_name \\\n", "54 3VgxeWOGdUYvtX1j8C9VyV The Beatles \n", "28 6gLmFcRwyQCQT23Df2Re9G The Beatles \n", "73 6ZrPbHp9kRmQj1tGLvna8U The Beatles \n", "152 3EbGioQyKyf4dycuiPOg3k The Beatles \n", "19 4311wT21Et0q3vepFwXjTu The Beatles \n", "114 3QbhVaulXxTyuAxHY3Pa5N The Beatles \n", "161 3Aqo28W4LLAolYpN3duVJl The Beatles \n", "58 3OSi8ehmSWLTD5KatlzX8r The Beatles \n", "100 3wAOX1N5M0ta3QNsokmhJV The Beatles \n", "138 1e0hllQ23AG0QGFgezgLOq The Beatles \n", "\n", " name neg neutral \\\n", "54 I'm So Tired - Remastered 0.892489 0.146302 \n", "28 I Want You (She's So Heavy) - Remastered 0.880760 0.091819 \n", "73 Revolution 9 - Remastered 0.872056 0.172322 \n", "152 Everybody's Trying To Be My Baby - Remastered 0.866985 0.914332 \n", "19 One After 909 - Remastered 0.865737 0.158470 \n", "114 You Won't See Me - Remastered 0.864585 0.247226 \n", "161 I'll Cry Instead - Remastered 0.863772 0.160516 \n", "58 Don't Pass Me By - Remastered 0.857831 0.120676 \n", "100 I'm Only Sleeping - Remastered 0.857651 0.269800 \n", "138 Yesterday - Remastered 0.852156 0.132796 \n", "\n", " pos valence \n", "54 0.107511 0.717 \n", "28 0.119240 0.420 \n", "73 0.127944 0.101 \n", "152 0.133015 0.943 \n", "19 0.134263 0.888 \n", "114 0.135415 0.473 \n", "161 0.136228 0.960 \n", "58 0.142169 0.946 \n", "100 0.142349 0.698 \n", "138 0.147844 0.315 " ] }, "execution_count": 271, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pipeline = [\n", " {'$match': {'lyrics': {'$exists': True}, 'sentiment': {'$exists': True}, 'valence': {'$exists': True},\n", " 'artist_id': beatles_id}},\n", " {'$project': {'artist_name': '$artist_name',\n", " 'name': '$name',\n", " 'valence': '$valence',\n", " 'neg': '$sentiment.probability.neg',\n", " 'neutral': '$sentiment.probability.neutral',\n", " 'pos': '$sentiment.probability.pos'}}\n", "]\n", "beatles_df = pd.DataFrame(list(tracks.aggregate(pipeline)))\n", "beatles_df.sort_values('neg', ascending=False).head(10)" ] }, { "cell_type": "code", "execution_count": 272, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namenamenegneutralposvalence
516QPaiM2qBKKAYNd8WiSR7uThe Rolling StonesYou Got Me Rocking - Remastered0.9043880.2020580.0956120.653
1462tBmA66b4cxYm7o2iPz0bOThe Rolling StonesCry To Me - Saturday Club / 19650.8926350.1613810.1073650.848
274sLirGgpkyL3RSdr13q3wdThe Rolling StonesShe Saw Me Coming - Remastered0.8850880.1210180.1149120.854
342L5stllrpcxflppsrTKG2cThe Rolling StonesLook What The Cat Dragged In - Remastered0.8835360.1486910.1164640.556
1362OtFl6ryjvaH3dGiTUUeh9The Rolling StonesCome On - Saturday Club / 19630.8821420.1303410.1178580.815
207DgRvvPcJlxks2lNpudsuTThe Rolling StonesPetrol Blues0.8716270.2594680.1283730.447
613Bz8qzOdHrXlo9ySAqHy97The Rolling StonesBaby Break It Down - Remastered0.8663060.2186430.1336940.745
1580VpHQIzxruwK61HgIkN4bsThe Rolling StonesEverybody Needs Somebody To Love - Top Gear / ...0.8618670.1136040.1381330.465
2331JZKBtBVhP5HmZLzMCcXFXThe Rolling StonesTumbling Dice - Live0.8565290.1990910.1434710.402
1325XQ2enmXsgp66RvyolR8qCThe Rolling StonesTumbling Dice - Live0.8565290.1990910.1434710.607
\n", "
" ], "text/plain": [ " _id artist_name \\\n", "51 6QPaiM2qBKKAYNd8WiSR7u The Rolling Stones \n", "146 2tBmA66b4cxYm7o2iPz0bO The Rolling Stones \n", "27 4sLirGgpkyL3RSdr13q3wd The Rolling Stones \n", "34 2L5stllrpcxflppsrTKG2c The Rolling Stones \n", "136 2OtFl6ryjvaH3dGiTUUeh9 The Rolling Stones \n", "20 7DgRvvPcJlxks2lNpudsuT The Rolling Stones \n", "61 3Bz8qzOdHrXlo9ySAqHy97 The Rolling Stones \n", "158 0VpHQIzxruwK61HgIkN4bs The Rolling Stones \n", "233 1JZKBtBVhP5HmZLzMCcXFX The Rolling Stones \n", "132 5XQ2enmXsgp66RvyolR8qC The Rolling Stones \n", "\n", " name neg neutral \\\n", "51 You Got Me Rocking - Remastered 0.904388 0.202058 \n", "146 Cry To Me - Saturday Club / 1965 0.892635 0.161381 \n", "27 She Saw Me Coming - Remastered 0.885088 0.121018 \n", "34 Look What The Cat Dragged In - Remastered 0.883536 0.148691 \n", "136 Come On - Saturday Club / 1963 0.882142 0.130341 \n", "20 Petrol Blues 0.871627 0.259468 \n", "61 Baby Break It Down - Remastered 0.866306 0.218643 \n", "158 Everybody Needs Somebody To Love - Top Gear / ... 0.861867 0.113604 \n", "233 Tumbling Dice - Live 0.856529 0.199091 \n", "132 Tumbling Dice - Live 0.856529 0.199091 \n", "\n", " pos valence \n", "51 0.095612 0.653 \n", "146 0.107365 0.848 \n", "27 0.114912 0.854 \n", "34 0.116464 0.556 \n", "136 0.117858 0.815 \n", "20 0.128373 0.447 \n", "61 0.133694 0.745 \n", "158 0.138133 0.465 \n", "233 0.143471 0.402 \n", "132 0.143471 0.607 " ] }, "execution_count": 272, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pipeline = [\n", " {'$match': {'lyrics': {'$exists': True}, 'sentiment': {'$exists': True}, 'valence': {'$exists': True},\n", " 'artist_id': stones_id}},\n", " {'$project': {'artist_name': '$artist_name',\n", " 'name': '$name',\n", " 'valence': '$valence',\n", " 'neg': '$sentiment.probability.neg',\n", " 'neutral': '$sentiment.probability.neutral',\n", " 'pos': '$sentiment.probability.pos'}}\n", "]\n", "stones_df = pd.DataFrame(list(tracks.aggregate(pipeline)))\n", "stones_df.sort_values('neg', ascending=False).head(10)" ] }, { "cell_type": "code", "execution_count": 273, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namenamenegneutralposvalence
10111qDTSr3Dj4TkPnBcIOqEJRadioheadVegetable0.8832910.1703710.1167090.420
4938WL6GlG9NHFiQS6JxV84rRadioheadMyxomatosis0.8649210.2613550.1350790.570
972zYmvi3w2T8a9Ckrv21bvWRadioheadStop Whispering0.8559820.1886000.1440180.298
341w8QCSDH4QobcQeT4uMKLmRadiohead4 Minute Warning0.8548200.5165740.1451800.223
833aDUSpF3LexOr1lFKvPV2hRadioheadThe Bends0.8542440.5338230.1457560.311
10348IEDejXX5LH8TAC3VIGpcRadioheadI Can't0.8497300.2653750.1502700.276
753SVAN3BRByDmHOhKyIDxfCRadioheadKarma Police0.8461290.1004380.1538710.317
894dPKQxaraW6CG1rTBzV6DWRadioheadMy Iron Lung0.8450800.1908630.1549200.671
245SdmtFbNOD7Qej6jFCHkOMRadioheadFaust Arp0.8385320.1677780.1614680.226
196dsq7Nt5mIFzvm5kIYNORyRadiohead15 Step0.8363560.1609280.1636440.847
\n", "
" ], "text/plain": [ " _id artist_name name neg neutral \\\n", "101 11qDTSr3Dj4TkPnBcIOqEJ Radiohead Vegetable 0.883291 0.170371 \n", "49 38WL6GlG9NHFiQS6JxV84r Radiohead Myxomatosis 0.864921 0.261355 \n", "97 2zYmvi3w2T8a9Ckrv21bvW Radiohead Stop Whispering 0.855982 0.188600 \n", "34 1w8QCSDH4QobcQeT4uMKLm Radiohead 4 Minute Warning 0.854820 0.516574 \n", "83 3aDUSpF3LexOr1lFKvPV2h Radiohead The Bends 0.854244 0.533823 \n", "103 48IEDejXX5LH8TAC3VIGpc Radiohead I Can't 0.849730 0.265375 \n", "75 3SVAN3BRByDmHOhKyIDxfC Radiohead Karma Police 0.846129 0.100438 \n", "89 4dPKQxaraW6CG1rTBzV6DW Radiohead My Iron Lung 0.845080 0.190863 \n", "24 5SdmtFbNOD7Qej6jFCHkOM Radiohead Faust Arp 0.838532 0.167778 \n", "19 6dsq7Nt5mIFzvm5kIYNORy Radiohead 15 Step 0.836356 0.160928 \n", "\n", " pos valence \n", "101 0.116709 0.420 \n", "49 0.135079 0.570 \n", "97 0.144018 0.298 \n", "34 0.145180 0.223 \n", "83 0.145756 0.311 \n", "103 0.150270 0.276 \n", "75 0.153871 0.317 \n", "89 0.154920 0.671 \n", "24 0.161468 0.226 \n", "19 0.163644 0.847 " ] }, "execution_count": 273, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pipeline = [\n", " {'$match': {'lyrics': {'$exists': True}, 'sentiment': {'$exists': True}, 'valence': {'$exists': True},\n", " 'artist_id': radiohead_id}},\n", " {'$project': {'artist_name': '$artist_name',\n", " 'name': '$name',\n", " 'valence': '$valence',\n", " 'neg': '$sentiment.probability.neg',\n", " 'neutral': '$sentiment.probability.neutral',\n", " 'pos': '$sentiment.probability.pos'}}\n", "]\n", "radiohead_df = pd.DataFrame(list(tracks.aggregate(pipeline)))\n", "radiohead_df.sort_values('neg', ascending=False).head(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Plot the valence/negativity scatter plot, using blue for The Beatles, red for The Rolling Stones, and green for Radiohead.\n", "\n", "If valence and negativity are correlated, I'd expect to see a trend from high negativity/low valence to low negativity/high valence." ] }, { "cell_type": "code", "execution_count": 274, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.scatter(beatles_df['valence'], beatles_df['neg'], color='blue')\n", "plt.scatter(stones_df['valence'], stones_df['neg'], color='red')\n", "plt.scatter(radiohead_df['valence'], radiohead_df['neg'], color='green')\n", "plt.xlabel('Valence')\n", "plt.ylabel('Sentiment negativity')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Neutrality, I think, is to do with the confidence in the classification." ] }, { "cell_type": "code", "execution_count": 275, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nsiWSX4nNYXk6HClqt1O1sIqKWLls/DYSepxQ3vmPE9K34Xwwt/sn26ore1WuClodCnW1Dm1wMYmE\naij/cShd2W9kxPk5HhnJ26yw0OF6h+eu8hKC7QceK6/5JhSsNrAO+CXwa2DUXvdh4HL7/wHg+7bA\n+CnwunLHbGehELkx4tipBf8nKlvRyBY0cUnY8e1IIZqCxVKdBUsKUbAqeGZeAqfSgSfoKykUytUV\nrLRvuXskoSfE+QV8JBhxbMMjwUhF9y9yo/P2tVBxB6Vt0e+2PBXfw5ER1WBQFXSBoN7ESPb3Ghpa\nPGbub+k2sNJIxNdrazYtIRT8WNpZKCQOJDQUD+XPDG4gf/SeeRtKddwOy2EieX262yFSlCn2XOLF\nqLSjTCRUp8SlIZGIpl3aksZZMDnev3jIlzrHbvfP7fZUI0QM9WNoyPn3yhUMGWHj+g60Q6HlGjBC\noV7UefiXVVlkZgY5AiExiEbeH3T8rtRynJDexIgexlI3aSSib7PVTYWL6yjJQy9WaUcZiZR5ASs9\noJZX+dSLSgu0V3Ep9WHVqvwTrlrl8wlbk1KvSBFN+7GaixEKLlTUqfg4/IsP5Os1E4NoaJTSs4i8\n0fTikkL0WfKNCScklLVD5C6O+lSw9E5lrqvSjlKkzFS9hYfXlfYbld6bumALhMSgNYjIDib+cIWP\nJ21NKhIKLfzc+YkRCg5UrH5w6RkOE6lp0pCZ6q4nkR3dr94SdNaXb3EXCk7rczuI1VuClqG5oO+/\ne8Rl9pMz6kwMopH3BfOEZzUzBSchdEJyXsAWVcRX2m80ZfCZGUzc4DCY8GkG1aqUEgoZFVIeLfrc\n+YlXodBVCfFcayW71ch1SdSWRgiSrjqfmWOp4hIJ8fpnrWCzTGyB4pxkO5OSIjcCOTjfR2rvzYQf\ni5XO7bV6NTz2mOtxQr0hNp42xp73xzzndMvEIVwxl8wW8Dki/UxfE+dVu1rfza+wbnWp8tO+1GnZ\ntMk6QCpluVkOD8OunEwwIt6TvnU4a9dawcxutFk35wstkRCv1ag4itXFQToT8VvXTAEuCfEQmF4B\n77pcSAxaWVHdcEpJkeqbJzS0mWPH4MorS+STeWwxw4hbHvp9z44WuXFv3GjdA6dcNRm37x9EYrxQ\nJnlhJM3dt04uCoQWT9JWSVhB3V3cnVI47N5trc9hyiXi3Gnw08ns319+G4M3zEyBEqMqh+HfCULZ\n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\nYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.scatter(beatles_df['neutral'], beatles_df['neg'], color='blue')\n", "plt.scatter(stones_df['neutral'], stones_df['neg'], color='red')\n", "plt.scatter(radiohead_df['neutral'], radiohead_df['neg'], color='green')\n", "plt.xlabel('Sentiment neutrality')\n", "plt.ylabel('Sentiment negativity')\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This plot shows that most songs have a low neutrality, so express a clear sentiment in the lyrics. Let's plot the distribution of \"neutral\" scores to highlight this." ] }, { "cell_type": "code", "execution_count": 276, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 276, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\nl6RC/D8Lq5CJ+Zo11gAAAABJRU5ErkJggg==\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "beatles_df['neutral'].hist(alpha=0.5, color='blue')\n", "stones_df['neutral'].hist(alpha=0.5, color='red')\n", "radiohead_df['neutral'].hist(alpha=0.5, color='green')" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Gloom index\n", "Let's recreate the \"gloom index\" idea from the original post and see what it tells us. Bear in mind that I'm using the sentiment negativity score, not the fraction of \"sad\" words.\n", "\n", "* [Top](#top)" ] }, { "cell_type": "code", "execution_count": 277, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namegloomlyrical_densitynamenegvalence
3207DgRvvPcJlxks2lNpudsuTThe Rolling Stones1.9701652.886214Petrol Blues0.8716270.4470
24666cuLvkHsW7dNkfNk6gQP9Radiohead1.5017621.991725A Wolf At the Door0.7933630.3700
314624njB7Ny3mlA46QokEin9The Rolling Stones1.4987091.966968No Spare Parts0.8555600.5410
1952Iccm3cKBQHWt5yk0yX9nhThe Beatles1.4862362.192747Please Please Me - Remastered 20090.8389240.7060
4760VpHQIzxruwK61HgIkN4bsThe Rolling Stones1.4583361.763389Everybody Needs Somebody To Love - Top Gear / ...0.8618670.4650
4584OXnLDjN5SClCcqTqPVMByThe Rolling Stones1.4181332.156830Cops And Robbers - Blues In Rhythm / 19640.7074400.3970
4542OtFl6ryjvaH3dGiTUUeh9The Rolling Stones1.4122191.992080Come On - Saturday Club / 19630.8821420.8150
4971CEZV1nYaEeqhWz73HKF3gThe Rolling Stones1.4069821.541667Intro - Live0.7240380.0263
2195SdmtFbNOD7Qej6jFCHkOMRadiohead1.3979201.411166Faust Arp0.8385320.2260
3786ncZ7LP1NY4IOp2zQLPOPXThe Rolling Stones1.3666161.704903Fight - Remastered0.8078780.4520
5801mnDusx7zn2yzmr42hUksEThe Rolling Stones1.3591431.496926Rip This Joint - Live0.7678580.1990
563VgxeWOGdUYvtX1j8C9VyVThe Beatles1.3501971.708599I'm So Tired - Remastered0.8924890.7170
54120AK6SpqAq9naDPylmJOzTThe Rolling Stones1.2731831.606426Rip This Joint - Live0.7678580.4550
756ZrPbHp9kRmQj1tGLvna8UThe Beatles1.2668260.874479Revolution 9 - Remastered0.8720560.1010
415H9q6ctIlamkqukdTrNt3kThe Beatles1.2455392.616693Her Majesty - Remastered0.5566080.5220
2783aDUSpF3LexOr1lFKvPV2hRadiohead1.2417681.100731The Bends0.8542440.3110
60942uZOBjvKNv4QKnBmjOwb0The Beatles1.2370991.234363Getting Better - Take 1 / Instrumental And Spe...0.8074780.3300
1285ou2BiQ9FxIYkxsYvYHpATThe Beatles1.2093781.648037Help! - Remastered0.8239150.7630
59955kc3bnwWdGFCqthgjqR9lThe Beatles1.2050651.112515She's Leaving Home - Remix0.7645530.2050
790ttMfoND7IQqFSMVOPkELCThe Beatles1.2033100.799772Blue Jay Way - Remastered 20090.8025570.0378
\n", "
" ], "text/plain": [ " _id artist_name gloom lyrical_density \\\n", "320 7DgRvvPcJlxks2lNpudsuT The Rolling Stones 1.970165 2.886214 \n", "246 66cuLvkHsW7dNkfNk6gQP9 Radiohead 1.501762 1.991725 \n", "314 624njB7Ny3mlA46QokEin9 The Rolling Stones 1.498709 1.966968 \n", "195 2Iccm3cKBQHWt5yk0yX9nh The Beatles 1.486236 2.192747 \n", "476 0VpHQIzxruwK61HgIkN4bs The Rolling Stones 1.458336 1.763389 \n", "458 4OXnLDjN5SClCcqTqPVMBy The Rolling Stones 1.418133 2.156830 \n", "454 2OtFl6ryjvaH3dGiTUUeh9 The Rolling Stones 1.412219 1.992080 \n", "497 1CEZV1nYaEeqhWz73HKF3g The Rolling Stones 1.406982 1.541667 \n", "219 5SdmtFbNOD7Qej6jFCHkOM Radiohead 1.397920 1.411166 \n", "378 6ncZ7LP1NY4IOp2zQLPOPX The Rolling Stones 1.366616 1.704903 \n", "580 1mnDusx7zn2yzmr42hUksE The Rolling Stones 1.359143 1.496926 \n", "56 3VgxeWOGdUYvtX1j8C9VyV The Beatles 1.350197 1.708599 \n", "541 20AK6SpqAq9naDPylmJOzT The Rolling Stones 1.273183 1.606426 \n", "75 6ZrPbHp9kRmQj1tGLvna8U The Beatles 1.266826 0.874479 \n", "41 5H9q6ctIlamkqukdTrNt3k The Beatles 1.245539 2.616693 \n", "278 3aDUSpF3LexOr1lFKvPV2h Radiohead 1.241768 1.100731 \n", "609 42uZOBjvKNv4QKnBmjOwb0 The Beatles 1.237099 1.234363 \n", "128 5ou2BiQ9FxIYkxsYvYHpAT The Beatles 1.209378 1.648037 \n", "599 55kc3bnwWdGFCqthgjqR9l The Beatles 1.205065 1.112515 \n", "79 0ttMfoND7IQqFSMVOPkELC The Beatles 1.203310 0.799772 \n", "\n", " name neg valence \n", "320 Petrol Blues 0.871627 0.4470 \n", "246 A Wolf At the Door 0.793363 0.3700 \n", "314 No Spare Parts 0.855560 0.5410 \n", "195 Please Please Me - Remastered 2009 0.838924 0.7060 \n", "476 Everybody Needs Somebody To Love - Top Gear / ... 0.861867 0.4650 \n", "458 Cops And Robbers - Blues In Rhythm / 1964 0.707440 0.3970 \n", "454 Come On - Saturday Club / 1963 0.882142 0.8150 \n", "497 Intro - Live 0.724038 0.0263 \n", "219 Faust Arp 0.838532 0.2260 \n", "378 Fight - Remastered 0.807878 0.4520 \n", "580 Rip This Joint - Live 0.767858 0.1990 \n", "56 I'm So Tired - Remastered 0.892489 0.7170 \n", "541 Rip This Joint - Live 0.767858 0.4550 \n", "75 Revolution 9 - Remastered 0.872056 0.1010 \n", "41 Her Majesty - Remastered 0.556608 0.5220 \n", "278 The Bends 0.854244 0.3110 \n", "609 Getting Better - Take 1 / Instrumental And Spe... 0.807478 0.3300 \n", "128 Help! - Remastered 0.823915 0.7630 \n", "599 She's Leaving Home - Remix 0.764553 0.2050 \n", "79 Blue Jay Way - Remastered 2009 0.802557 0.0378 " ] }, "execution_count": 277, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pipeline = [\n", " {'$match': {'lyrics': {'$exists': True}, 'sentiment': {'$exists': True}, 'valence': {'$exists': True}}},\n", " {'$project': {'artist_name': '$artist_name',\n", " 'name': '$name',\n", " 'valence': '$valence',\n", " 'neg': '$sentiment.probability.neg',\n", " 'lyrical_density': '$lyrical_density',\n", " 'gloom': {'$divide': [{'$add': [{'$subtract': [1, '$valence']},\n", " {'$multiply': ['$sentiment.probability.neg', \n", " {'$add': ['$lyrical_density', 1]}]}]}, \n", " 2]}}}]\n", "results = pd.DataFrame(list(tracks.aggregate(pipeline)))\n", "results.sort_values('gloom', ascending=False).head(20)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Interestingly, the gloomiest songs seem pretty evenly spread between artists." ] }, { "cell_type": "code", "execution_count": 278, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namegloomlyrical_densitynamenegvalence
5166cuLvkHsW7dNkfNk6gQP9Radiohead1.5017621.991725A Wolf At the Door0.7933630.3700
245SdmtFbNOD7Qej6jFCHkOMRadiohead1.3979201.411166Faust Arp0.8385320.2260
833aDUSpF3LexOr1lFKvPV2hRadiohead1.2417681.100731The Bends0.8542440.3110
130eZN5WsQfmNFICHuw59ZfzRadiohead1.1515520.705463Glass Eyes0.8001950.0616
983ovbSnT5NNhl1gzMcw1NRZRadiohead1.1411151.151468Thinking About You0.7916600.4210
85045sp2JToyTaaKyXkGejPyRadiohead1.0873130.581341Fake Plastic Trees0.8275420.1340
845jafMI8FLibnjkYTZ33m0cRadiohead1.0862420.858319High And Dry0.8203560.3520
884SE81CrzH0qPA8KHqM9SyzRadiohead1.0719140.856048Just0.8091540.3580
744aOAzvRdOsZSwZIgwcdeL0Radiohead1.0568680.524102Let Down0.8258870.1450
1024D6ZExVvYLZxhcAvifX5pxRadiohead1.0535470.749795Prove Yourself0.8150060.3190
\n", "
" ], "text/plain": [ " _id artist_name gloom lyrical_density \\\n", "51 66cuLvkHsW7dNkfNk6gQP9 Radiohead 1.501762 1.991725 \n", "24 5SdmtFbNOD7Qej6jFCHkOM Radiohead 1.397920 1.411166 \n", "83 3aDUSpF3LexOr1lFKvPV2h Radiohead 1.241768 1.100731 \n", "13 0eZN5WsQfmNFICHuw59Zfz Radiohead 1.151552 0.705463 \n", "98 3ovbSnT5NNhl1gzMcw1NRZ Radiohead 1.141115 1.151468 \n", "85 045sp2JToyTaaKyXkGejPy Radiohead 1.087313 0.581341 \n", "84 5jafMI8FLibnjkYTZ33m0c Radiohead 1.086242 0.858319 \n", "88 4SE81CrzH0qPA8KHqM9Syz Radiohead 1.071914 0.856048 \n", "74 4aOAzvRdOsZSwZIgwcdeL0 Radiohead 1.056868 0.524102 \n", "102 4D6ZExVvYLZxhcAvifX5px Radiohead 1.053547 0.749795 \n", "\n", " name neg valence \n", "51 A Wolf At the Door 0.793363 0.3700 \n", "24 Faust Arp 0.838532 0.2260 \n", "83 The Bends 0.854244 0.3110 \n", "13 Glass Eyes 0.800195 0.0616 \n", "98 Thinking About You 0.791660 0.4210 \n", "85 Fake Plastic Trees 0.827542 0.1340 \n", "84 High And Dry 0.820356 0.3520 \n", "88 Just 0.809154 0.3580 \n", "74 Let Down 0.825887 0.1450 \n", "102 Prove Yourself 0.815006 0.3190 " ] }, "execution_count": 278, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pipeline = [\n", " {'$match': {'lyrics': {'$exists': True}, 'sentiment': {'$exists': True}, 'valence': {'$exists': True},\n", " 'artist_id': radiohead_id}},\n", " {'$project': {'artist_name': '$artist_name',\n", " 'name': '$name',\n", " 'valence': '$valence',\n", " 'neg': '$sentiment.probability.neg',\n", " 'lyrical_density': '$lyrical_density',\n", " 'gloom': {'$divide': [{'$add': [{'$subtract': [1, '$valence']},\n", " {'$multiply': ['$sentiment.probability.neg', \n", " {'$add': ['$lyrical_density', 1]}]}]}, \n", " 2]}}}]\n", "results = pd.DataFrame(list(tracks.aggregate(pipeline)))\n", "results.sort_values('gloom', ascending=False).head(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "These, in theory, are the most depressing Radiohead songs. For information, the [fitteR happieR songs](http://rcharlie.com/2017-02-16-fitteR-happieR/) were:\n", "\n", " | gloom_index| track_name\n", "--|------------|--------------------------|\n", "1 | 1.00 | True Love Waits\n", "2 | 6.46 | Give Up The Ghost\n", "3 | 9.35 | Motion Picture Soundtrack\n", "4 | 13.70 | Let Down\n", "5 | 14.15 | Pyramid Song\n", "6 | 14.57 | Exit Music (For a Film)\n", "7 | 15.29 | Dollars & Cents\n", "8 | 15.69 | High And Dry\n", "9 | 15.80 | Tinker Tailor Soldier ...\n", "10| 16.03 | Videotape\n", "\n", "...which has only two songs in common, \"High and Dry\" and \"Let Down\". I'm not convinced by this analysis.\n", "\n", "What does the same analysis say for The Beatles?" ] }, { "cell_type": "code", "execution_count": 279, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namegloomlyrical_densitynamenegvalence
1862Iccm3cKBQHWt5yk0yX9nhThe Beatles1.4862362.192747Please Please Me - Remastered 20090.8389240.7060
543VgxeWOGdUYvtX1j8C9VyVThe Beatles1.3501971.708599I'm So Tired - Remastered0.8924890.7170
736ZrPbHp9kRmQj1tGLvna8UThe Beatles1.2668260.874479Revolution 9 - Remastered0.8720560.1010
395H9q6ctIlamkqukdTrNt3kThe Beatles1.2455392.616693Her Majesty - Remastered0.5566080.5220
21942uZOBjvKNv4QKnBmjOwb0The Beatles1.2370991.234363Getting Better - Take 1 / Instrumental And Spe...0.8074780.3300
1265ou2BiQ9FxIYkxsYvYHpATThe Beatles1.2093781.648037Help! - Remastered0.8239150.7630
20955kc3bnwWdGFCqthgjqR9lThe Beatles1.2050651.112515She's Leaving Home - Remix0.7645530.2050
770ttMfoND7IQqFSMVOPkELCThe Beatles1.2033100.799772Blue Jay Way - Remastered 20090.8025570.0378
1381e0hllQ23AG0QGFgezgLOqThe Beatles1.1957851.002650Yesterday - Remastered0.8521560.3150
15369d54YOS8TOQiUYjX57XeAThe Beatles1.1834941.601816A Hard Day's Night - Remastered0.8317220.7970
\n", "
" ], "text/plain": [ " _id artist_name gloom lyrical_density \\\n", "186 2Iccm3cKBQHWt5yk0yX9nh The Beatles 1.486236 2.192747 \n", "54 3VgxeWOGdUYvtX1j8C9VyV The Beatles 1.350197 1.708599 \n", "73 6ZrPbHp9kRmQj1tGLvna8U The Beatles 1.266826 0.874479 \n", "39 5H9q6ctIlamkqukdTrNt3k The Beatles 1.245539 2.616693 \n", "219 42uZOBjvKNv4QKnBmjOwb0 The Beatles 1.237099 1.234363 \n", "126 5ou2BiQ9FxIYkxsYvYHpAT The Beatles 1.209378 1.648037 \n", "209 55kc3bnwWdGFCqthgjqR9l The Beatles 1.205065 1.112515 \n", "77 0ttMfoND7IQqFSMVOPkELC The Beatles 1.203310 0.799772 \n", "138 1e0hllQ23AG0QGFgezgLOq The Beatles 1.195785 1.002650 \n", "153 69d54YOS8TOQiUYjX57XeA The Beatles 1.183494 1.601816 \n", "\n", " name neg valence \n", "186 Please Please Me - Remastered 2009 0.838924 0.7060 \n", "54 I'm So Tired - Remastered 0.892489 0.7170 \n", "73 Revolution 9 - Remastered 0.872056 0.1010 \n", "39 Her Majesty - Remastered 0.556608 0.5220 \n", "219 Getting Better - Take 1 / Instrumental And Spe... 0.807478 0.3300 \n", "126 Help! - Remastered 0.823915 0.7630 \n", "209 She's Leaving Home - Remix 0.764553 0.2050 \n", "77 Blue Jay Way - Remastered 2009 0.802557 0.0378 \n", "138 Yesterday - Remastered 0.852156 0.3150 \n", "153 A Hard Day's Night - Remastered 0.831722 0.7970 " ] }, "execution_count": 279, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pipeline = [\n", " {'$match': {'lyrics': {'$exists': True}, 'sentiment': {'$exists': True}, 'valence': {'$exists': True},\n", " 'artist_id': beatles_id}},\n", " {'$project': {'artist_name': '$artist_name',\n", " 'name': '$name',\n", " 'valence': '$valence',\n", " 'neg': '$sentiment.probability.neg',\n", " 'lyrical_density': '$lyrical_density',\n", " 'gloom': {'$divide': [{'$add': [{'$subtract': [1, '$valence']},\n", " {'$multiply': ['$sentiment.probability.neg', \n", " {'$add': ['$lyrical_density', 1]}]}]}, \n", " 2]}}}]\n", "results = pd.DataFrame(list(tracks.aggregate(pipeline)))\n", "results.sort_values('gloom', ascending=False).head(10)" ] }, { "cell_type": "code", "execution_count": 280, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namegloomlyrical_densitynamenegvalence
207DgRvvPcJlxks2lNpudsuTThe Rolling Stones1.9701652.886214Petrol Blues0.8716270.4470
14624njB7Ny3mlA46QokEin9The Rolling Stones1.4987091.966968No Spare Parts0.8555600.5410
1580VpHQIzxruwK61HgIkN4bsThe Rolling Stones1.4583361.763389Everybody Needs Somebody To Love - Top Gear / ...0.8618670.4650
1404OXnLDjN5SClCcqTqPVMByThe Rolling Stones1.4181332.156830Cops And Robbers - Blues In Rhythm / 19640.7074400.3970
1362OtFl6ryjvaH3dGiTUUeh9The Rolling Stones1.4122191.992080Come On - Saturday Club / 19630.8821420.8150
1651CEZV1nYaEeqhWz73HKF3gThe Rolling Stones1.4069821.541667Intro - Live0.7240380.0263
786ncZ7LP1NY4IOp2zQLPOPXThe Rolling Stones1.3666161.704903Fight - Remastered0.8078780.4520
2481mnDusx7zn2yzmr42hUksEThe Rolling Stones1.3591431.496926Rip This Joint - Live0.7678580.1990
20920AK6SpqAq9naDPylmJOzTThe Rolling Stones1.2731831.606426Rip This Joint - Live0.7678580.4550
304EBRAPYAcIczjUA4Z0BdhQThe Rolling Stones1.1799171.199295Oh No, Not You Again - Remastered0.8433760.4950
\n", "
" ], "text/plain": [ " _id artist_name gloom lyrical_density \\\n", "20 7DgRvvPcJlxks2lNpudsuT The Rolling Stones 1.970165 2.886214 \n", "14 624njB7Ny3mlA46QokEin9 The Rolling Stones 1.498709 1.966968 \n", "158 0VpHQIzxruwK61HgIkN4bs The Rolling Stones 1.458336 1.763389 \n", "140 4OXnLDjN5SClCcqTqPVMBy The Rolling Stones 1.418133 2.156830 \n", "136 2OtFl6ryjvaH3dGiTUUeh9 The Rolling Stones 1.412219 1.992080 \n", "165 1CEZV1nYaEeqhWz73HKF3g The Rolling Stones 1.406982 1.541667 \n", "78 6ncZ7LP1NY4IOp2zQLPOPX The Rolling Stones 1.366616 1.704903 \n", "248 1mnDusx7zn2yzmr42hUksE The Rolling Stones 1.359143 1.496926 \n", "209 20AK6SpqAq9naDPylmJOzT The Rolling Stones 1.273183 1.606426 \n", "30 4EBRAPYAcIczjUA4Z0BdhQ The Rolling Stones 1.179917 1.199295 \n", "\n", " name neg valence \n", "20 Petrol Blues 0.871627 0.4470 \n", "14 No Spare Parts 0.855560 0.5410 \n", "158 Everybody Needs Somebody To Love - Top Gear / ... 0.861867 0.4650 \n", "140 Cops And Robbers - Blues In Rhythm / 1964 0.707440 0.3970 \n", "136 Come On - Saturday Club / 1963 0.882142 0.8150 \n", "165 Intro - Live 0.724038 0.0263 \n", "78 Fight - Remastered 0.807878 0.4520 \n", "248 Rip This Joint - Live 0.767858 0.1990 \n", "209 Rip This Joint - Live 0.767858 0.4550 \n", "30 Oh No, Not You Again - Remastered 0.843376 0.4950 " ] }, "execution_count": 280, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pipeline = [\n", " {'$match': {'lyrics': {'$exists': True}, 'sentiment': {'$exists': True}, 'valence': {'$exists': True},\n", " 'artist_id': stones_id}},\n", " {'$project': {'artist_name': '$artist_name',\n", " 'name': '$name',\n", " 'valence': '$valence',\n", " 'neg': '$sentiment.probability.neg',\n", " 'lyrical_density': '$lyrical_density',\n", " 'gloom': {'$divide': [{'$add': [{'$subtract': [1, '$valence']},\n", " {'$multiply': ['$sentiment.probability.neg', \n", " {'$add': ['$lyrical_density', 1]}]}]}, \n", " 2]}}}]\n", "results = pd.DataFrame(list(tracks.aggregate(pipeline)))\n", "results.sort_values('gloom', ascending=False).head(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Revised gloom index\n", "I don't like the calculation for gloom index. If the point of \"lyrical density\" is to scale the gloom index between valence and sentiment, depending on how many words are in the song. Let's do that weighting properly.\n", "\n", "$$gloom = \\frac{(1 - normedLyricDensity)\\times(1 - valence) + normedLyricDensity \\times negativity }{2}$$\n", "\n", "* [Top](#top)" ] }, { "cell_type": "code", "execution_count": 281, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namelyrical_densitynamenegvalencescaled_ldgloom
2254gq2bc2770XvbJdEtfUbmwRadiohead0.201546Go Slowly0.7237740.04390.0612620.470934
27675YUnz58ajMo2VIIuUFvOVRadiohead0.248061The Tourist0.6678640.03980.0775270.468768
21301ZpFhrMMqKPVCwyqXneVpRadiohead0.218723True Love Waits0.5322060.03790.0672680.466591
23953RYTfkLiyZuUZHwJC3WmmRadiohead0.276367We Suck Young Blood0.5353580.03780.0874250.462442
2355olWalQH1oVza5D6xJg4oXRadiohead0.216752Sail To The Moon0.6057980.05400.0665790.461675
1724sLGaMl33I6mcsk7u4xHAURadiohead0.146307Codex0.6379420.06480.0419470.461365
790ttMfoND7IQqFSMVOPkELCThe Beatles0.799772Blue Jay Way - Remastered 20090.8025570.03780.2704420.459513
2233uxhyRdWVXp7GQvERQl6fARadiohead0.382643Videotape0.6529620.04660.1245860.457985
2640COiZ7ncho2yi4HotbzgPvRadiohead0.349157Motion Picture Soundtrack0.5768080.04350.1128770.456821
2857wB2VenWR6rchtLwawreIgRadiohead0.359311Bullet Proof ... I Wish I Was0.8046360.07730.1164270.454477
\n", "
" ], "text/plain": [ " _id artist_name lyrical_density \\\n", "225 4gq2bc2770XvbJdEtfUbmw Radiohead 0.201546 \n", "276 75YUnz58ajMo2VIIuUFvOV Radiohead 0.248061 \n", "213 01ZpFhrMMqKPVCwyqXneVp Radiohead 0.218723 \n", "239 53RYTfkLiyZuUZHwJC3Wmm Radiohead 0.276367 \n", "235 5olWalQH1oVza5D6xJg4oX Radiohead 0.216752 \n", "172 4sLGaMl33I6mcsk7u4xHAU Radiohead 0.146307 \n", "79 0ttMfoND7IQqFSMVOPkELC The Beatles 0.799772 \n", "223 3uxhyRdWVXp7GQvERQl6fA Radiohead 0.382643 \n", "264 0COiZ7ncho2yi4HotbzgPv Radiohead 0.349157 \n", "285 7wB2VenWR6rchtLwawreIg Radiohead 0.359311 \n", "\n", " name neg valence scaled_ld gloom \n", "225 Go Slowly 0.723774 0.0439 0.061262 0.470934 \n", "276 The Tourist 0.667864 0.0398 0.077527 0.468768 \n", "213 True Love Waits 0.532206 0.0379 0.067268 0.466591 \n", "239 We Suck Young Blood 0.535358 0.0378 0.087425 0.462442 \n", "235 Sail To The Moon 0.605798 0.0540 0.066579 0.461675 \n", "172 Codex 0.637942 0.0648 0.041947 0.461365 \n", "79 Blue Jay Way - Remastered 2009 0.802557 0.0378 0.270442 0.459513 \n", "223 Videotape 0.652962 0.0466 0.124586 0.457985 \n", "264 Motion Picture Soundtrack 0.576808 0.0435 0.112877 0.456821 \n", "285 Bullet Proof ... I Wish I Was 0.804636 0.0773 0.116427 0.454477 " ] }, "execution_count": 281, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pipeline = [\n", " {'$match': {'lyrics': {'$exists': True}, 'sentiment': {'$exists': True}, 'valence': {'$exists': True}}},\n", " {'$project': {'artist_name': '$artist_name',\n", " 'name': '$name',\n", " 'valence': '$valence',\n", " 'neg': '$sentiment.probability.neg',\n", " 'lyrical_density': '$lyrical_density'}}]\n", "results = pd.DataFrame(list(tracks.aggregate(pipeline)))\n", "\n", "# Use pandas to scale the lyrical density values to the range 0 -1\n", "results['scaled_ld'] = (results['lyrical_density'] - results['lyrical_density'].min()) / \\\n", " (results['lyrical_density'].max() - results['lyrical_density'].min())\n", "\n", "# Define a Python function to calculate the revised gloom index\n", "def gloom(row):\n", " w_valence = (1 - row['valence']) * (1 - row['scaled_ld'])\n", " w_neg = row['neg'] * row['scaled_ld']\n", " return (w_valence + w_neg) / 2\n", "\n", "# Apply this function to create a new column\n", "results['gloom'] = results.apply(gloom, axis=1)\n", "\n", "# Push the results back into the database\n", "for row in results.itertuples():\n", " unfiltered_tracks.update_one({'_id': row[1]}, {'$set': {'gloom': row.gloom}})\n", "\n", "results.sort_values('gloom', ascending=False).head(10)" ] }, { "cell_type": "code", "execution_count": 282, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namelyrical_densitynamenegvalencescaled_ldgloom
2254gq2bc2770XvbJdEtfUbmwRadiohead0.201546Go Slowly0.7237740.04390.0612620.470934
27675YUnz58ajMo2VIIuUFvOVRadiohead0.248061The Tourist0.6678640.03980.0775270.468768
21301ZpFhrMMqKPVCwyqXneVpRadiohead0.218723True Love Waits0.5322060.03790.0672680.466591
23953RYTfkLiyZuUZHwJC3WmmRadiohead0.276367We Suck Young Blood0.5353580.03780.0874250.462442
2355olWalQH1oVza5D6xJg4oXRadiohead0.216752Sail To The Moon0.6057980.05400.0665790.461675
1724sLGaMl33I6mcsk7u4xHAURadiohead0.146307Codex0.6379420.06480.0419470.461365
2233uxhyRdWVXp7GQvERQl6fARadiohead0.382643Videotape0.6529620.04660.1245860.457985
2640COiZ7ncho2yi4HotbzgPvRadiohead0.349157Motion Picture Soundtrack0.5768080.04350.1128770.456821
2857wB2VenWR6rchtLwawreIgRadiohead0.359311Bullet Proof ... I Wish I Was0.8046360.07730.1164270.454477
2080eZN5WsQfmNFICHuw59ZfzRadiohead0.705463Glass Eyes0.8001950.06160.2374650.452791
\n", "
" ], "text/plain": [ " _id artist_name lyrical_density \\\n", "225 4gq2bc2770XvbJdEtfUbmw Radiohead 0.201546 \n", "276 75YUnz58ajMo2VIIuUFvOV Radiohead 0.248061 \n", "213 01ZpFhrMMqKPVCwyqXneVp Radiohead 0.218723 \n", "239 53RYTfkLiyZuUZHwJC3Wmm Radiohead 0.276367 \n", "235 5olWalQH1oVza5D6xJg4oX Radiohead 0.216752 \n", "172 4sLGaMl33I6mcsk7u4xHAU Radiohead 0.146307 \n", "223 3uxhyRdWVXp7GQvERQl6fA Radiohead 0.382643 \n", "264 0COiZ7ncho2yi4HotbzgPv Radiohead 0.349157 \n", "285 7wB2VenWR6rchtLwawreIg Radiohead 0.359311 \n", "208 0eZN5WsQfmNFICHuw59Zfz Radiohead 0.705463 \n", "\n", " name neg valence scaled_ld gloom \n", "225 Go Slowly 0.723774 0.0439 0.061262 0.470934 \n", "276 The Tourist 0.667864 0.0398 0.077527 0.468768 \n", "213 True Love Waits 0.532206 0.0379 0.067268 0.466591 \n", "239 We Suck Young Blood 0.535358 0.0378 0.087425 0.462442 \n", "235 Sail To The Moon 0.605798 0.0540 0.066579 0.461675 \n", "172 Codex 0.637942 0.0648 0.041947 0.461365 \n", "223 Videotape 0.652962 0.0466 0.124586 0.457985 \n", "264 Motion Picture Soundtrack 0.576808 0.0435 0.112877 0.456821 \n", "285 Bullet Proof ... I Wish I Was 0.804636 0.0773 0.116427 0.454477 \n", "208 Glass Eyes 0.800195 0.0616 0.237465 0.452791 " ] }, "execution_count": 282, "metadata": {}, "output_type": "execute_result" } ], "source": [ "results[results['artist_name'] == 'Radiohead'].sort_values('gloom', ascending=False).head(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This still isn't the same as the original list, though there are now three songs in common (\"True Love Waits\", \"Motion Picture Soundtrack\", and \"Tinker Tailor…\") and the lists agree on the gloomiest song!\n", "\n", " | gloom_index | track_name\n", "--|-------------|--------------------------\n", "1 | 1.00 | True Love Waits\n", "2 | 6.46 | Give Up The Ghost\n", "3 | 9.35 | Motion Picture Soundtrack\n", "4 | 13.70 | Let Down\n", "5 | 14.15 | Pyramid Song\n", "6 | 14.57 | Exit Music (For a Film)\n", "7 | 15.29 | Dollars & Cents\n", "8 | 15.69 | High And Dry\n", "9 | 15.80 | Tinker Tailor Soldier ...\n", "10| 16.03 | Videotape\n" ] }, { "cell_type": "code", "execution_count": 283, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namelyrical_densitynamenegvalencescaled_ldgloom
3207DgRvvPcJlxks2lNpudsuTThe Rolling Stones2.886214Petrol Blues0.8716270.44701.0000000.435814
3551dTX9ivyAhFJLR1f2pk9KvThe Rolling Stones0.360195Out Of Tears - Remastered0.7822480.13700.1167370.426787
4971CEZV1nYaEeqhWz73HKF3gThe Rolling Stones1.541667Intro - Live0.7240380.02630.5298570.420707
5564HjKfesqhmkthgJg738g3AThe Rolling Stones0.489400Connection - Live0.8373490.16100.1619150.419366
5450q26ITWa4vXhoV5jvRCZXZThe Rolling Stones0.648240It's All Over Now - Live0.7997000.16500.2174560.413662
3407tWJEqPI5Jpie3NhtbWks6The Rolling Stones0.570166Already Over Me - Remastered0.8035400.17900.1901560.408840
4237G6Z0sDe39MFjTaA0XfCtwThe Rolling Stones0.444033I Can't Quit You Baby0.7679900.17700.1460520.407483
3491qEGxs60ntxuenj27BnRkFThe Rolling Stones0.551257How Can I Stop - Remastered0.6951970.16700.1835450.403853
428388ll2SEjDO9LZIXXyKtjhThe Rolling Stones0.301584Little Rain0.4552210.15700.0962420.402840
3626wo8Eid3jXbaScSEpv0IQOThe Rolling Stones0.357249Thru and Thru - Remastered0.6921180.19100.1157060.397738
\n", "
" ], "text/plain": [ " _id artist_name lyrical_density \\\n", "320 7DgRvvPcJlxks2lNpudsuT The Rolling Stones 2.886214 \n", "355 1dTX9ivyAhFJLR1f2pk9Kv The Rolling Stones 0.360195 \n", "497 1CEZV1nYaEeqhWz73HKF3g The Rolling Stones 1.541667 \n", "556 4HjKfesqhmkthgJg738g3A The Rolling Stones 0.489400 \n", "545 0q26ITWa4vXhoV5jvRCZXZ The Rolling Stones 0.648240 \n", "340 7tWJEqPI5Jpie3NhtbWks6 The Rolling Stones 0.570166 \n", "423 7G6Z0sDe39MFjTaA0XfCtw The Rolling Stones 0.444033 \n", "349 1qEGxs60ntxuenj27BnRkF The Rolling Stones 0.551257 \n", "428 388ll2SEjDO9LZIXXyKtjh The Rolling Stones 0.301584 \n", "362 6wo8Eid3jXbaScSEpv0IQO The Rolling Stones 0.357249 \n", "\n", " name neg valence scaled_ld gloom \n", "320 Petrol Blues 0.871627 0.4470 1.000000 0.435814 \n", "355 Out Of Tears - Remastered 0.782248 0.1370 0.116737 0.426787 \n", "497 Intro - Live 0.724038 0.0263 0.529857 0.420707 \n", "556 Connection - Live 0.837349 0.1610 0.161915 0.419366 \n", "545 It's All Over Now - Live 0.799700 0.1650 0.217456 0.413662 \n", "340 Already Over Me - Remastered 0.803540 0.1790 0.190156 0.408840 \n", "423 I Can't Quit You Baby 0.767990 0.1770 0.146052 0.407483 \n", "349 How Can I Stop - Remastered 0.695197 0.1670 0.183545 0.403853 \n", "428 Little Rain 0.455221 0.1570 0.096242 0.402840 \n", "362 Thru and Thru - Remastered 0.692118 0.1910 0.115706 0.397738 " ] }, "execution_count": 283, "metadata": {}, "output_type": "execute_result" } ], "source": [ "results[results['artist_name'] == 'The Rolling Stones'].sort_values('gloom', ascending=False).head(10)" ] }, { "cell_type": "code", "execution_count": 284, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namelyrical_densitynamenegvalencescaled_ldgloom
790ttMfoND7IQqFSMVOPkELCThe Beatles0.799772Blue Jay Way - Remastered 20090.8025570.03780.2704420.459513
756ZrPbHp9kRmQj1tGLvna8UThe Beatles0.874479Revolution 9 - Remastered0.8720560.10100.2965640.445505
6053ZFPe2aiLQuEfDxSqQstZpThe Beatles0.640638A Day In The Life - Remix0.7773080.13300.2147980.423867
02ucFulEWapRAmTn7l6f5Q7The Beatles0.169898Wild Honey Pie - Remastered0.3911780.15200.0501960.412535
1130agoaPIy92gPZ6zRhqXarEThe Beatles0.634931Tomorrow Never Knows - Remastered0.3435990.05340.2128030.409140
993ZFBeIyP41HhnALjxWy1pRThe Beatles0.628310A Day In The Life - Remastered0.7773080.17500.2104870.407481
4487izSn5tJgisBSdCQdyePcIThe Beatles0.726127A Day In The Life - Take 1 With Hums0.7773080.19200.2446910.400245
324cLoL5KPfE1hAwfsO84FX7The Beatles0.325955Because - Remastered0.4662540.16200.1047640.399527
6113HEC6nzAo3U5z7blaCNBcFThe Beatles0.999476She's Leaving Home - Take 1 / Instrumental0.7645530.18400.3402720.399247
7027YZJHyTTDIurMqDu1v2efThe Beatles0.429399Long, Long, Long - Remastered0.5241220.16300.1409350.396452
\n", "
" ], "text/plain": [ " _id artist_name lyrical_density \\\n", "79 0ttMfoND7IQqFSMVOPkELC The Beatles 0.799772 \n", "75 6ZrPbHp9kRmQj1tGLvna8U The Beatles 0.874479 \n", "605 3ZFPe2aiLQuEfDxSqQstZp The Beatles 0.640638 \n", "0 2ucFulEWapRAmTn7l6f5Q7 The Beatles 0.169898 \n", "113 0agoaPIy92gPZ6zRhqXarE The Beatles 0.634931 \n", "99 3ZFBeIyP41HhnALjxWy1pR The Beatles 0.628310 \n", "448 7izSn5tJgisBSdCQdyePcI The Beatles 0.726127 \n", "32 4cLoL5KPfE1hAwfsO84FX7 The Beatles 0.325955 \n", "611 3HEC6nzAo3U5z7blaCNBcF The Beatles 0.999476 \n", "70 27YZJHyTTDIurMqDu1v2ef The Beatles 0.429399 \n", "\n", " name neg valence scaled_ld \\\n", "79 Blue Jay Way - Remastered 2009 0.802557 0.0378 0.270442 \n", "75 Revolution 9 - Remastered 0.872056 0.1010 0.296564 \n", "605 A Day In The Life - Remix 0.777308 0.1330 0.214798 \n", "0 Wild Honey Pie - Remastered 0.391178 0.1520 0.050196 \n", "113 Tomorrow Never Knows - Remastered 0.343599 0.0534 0.212803 \n", "99 A Day In The Life - Remastered 0.777308 0.1750 0.210487 \n", "448 A Day In The Life - Take 1 With Hums 0.777308 0.1920 0.244691 \n", "32 Because - Remastered 0.466254 0.1620 0.104764 \n", "611 She's Leaving Home - Take 1 / Instrumental 0.764553 0.1840 0.340272 \n", "70 Long, Long, Long - Remastered 0.524122 0.1630 0.140935 \n", "\n", " gloom \n", "79 0.459513 \n", "75 0.445505 \n", "605 0.423867 \n", "0 0.412535 \n", "113 0.409140 \n", "99 0.407481 \n", "448 0.400245 \n", "32 0.399527 \n", "611 0.399247 \n", "70 0.396452 " ] }, "execution_count": 284, "metadata": {}, "output_type": "execute_result" } ], "source": [ "results[results['artist_name'] == 'The Beatles'].sort_values('gloom', ascending=False).head(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "I don't know the Radiohead corpus, but I know some Beatles songs. _Blue Jay Way_ is pretty sad, as is _A Day in the Life_. _Revolution 9_ and _Wild Honey Pie_ are just... odd, rather than sad. It's suspicious that some obviously sad Beatles songs are missing. What does this analysis think of unequivocally sad songs like _She's Leaving Home_, _Yesterday_, and _Eleanor Rigby_?" ] }, { "cell_type": "code", "execution_count": 285, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namelyrical_densitynamenegvalencescaled_ldgloom
1401e0hllQ23AG0QGFgezgLOqThe Beatles1.002650Yesterday - Remastered0.8521560.3150.3413810.371032
921Ipl1kvks5s6GKn6oqgzeYThe Beatles1.064324She's Leaving Home - Remastered0.7645530.3930.3629470.332092
10177f3aNeabAbOaSB32Sd5QEThe Beatles1.620131Eleanor Rigby - Remastered0.7993260.8130.5572930.264123
\n", "
" ], "text/plain": [ " _id artist_name lyrical_density \\\n", "140 1e0hllQ23AG0QGFgezgLOq The Beatles 1.002650 \n", "92 1Ipl1kvks5s6GKn6oqgzeY The Beatles 1.064324 \n", "101 77f3aNeabAbOaSB32Sd5QE The Beatles 1.620131 \n", "\n", " name neg valence scaled_ld gloom \n", "140 Yesterday - Remastered 0.852156 0.315 0.341381 0.371032 \n", "92 She's Leaving Home - Remastered 0.764553 0.393 0.362947 0.332092 \n", "101 Eleanor Rigby - Remastered 0.799326 0.813 0.557293 0.264123 " ] }, "execution_count": 285, "metadata": {}, "output_type": "execute_result" } ], "source": [ "slh = tracks.find_one({'ctitle': 'shes leaving home'})['_id']\n", "yd = tracks.find_one({'ctitle': 'yesterday'})['_id']\n", "er = tracks.find_one({'ctitle': 'eleanor rigby'})['_id']\n", "results[results['_id'].isin([slh, yd, er])].sort_values('gloom', ascending=False)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Glee index: anti-gloom\n", "Rather than looking at the saddest songs, how about using the same data to find the happiest songs?\n", "\n", "* [Top](#top)" ] }, { "cell_type": "code", "execution_count": 286, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namelyrical_densitynamenegvalencescaled_ldgloom
513fuEJBCK3kWnJHFTODR4cbThe Beatles1.608806Ob-La-Di, Ob-La-Da - Remastered0.1019050.9750.5533340.033777
3904FHhq0QWpLSS6WZnkJnZp1The Rolling Stones0.312839Feel On Baby - Remastered0.7842920.9660.1001780.054581
453TEbDhNDU4NDXq0h86nGZ7The Beatles1.008850Hey Bulldog - Remastered0.2488550.9470.3435490.060143
1777cPPyMrSAQY7A686Cn9eUPThe Beatles0.891649All My Loving - Remastered0.2350230.9000.3025680.070427
644KIXWIzNcKzorNDgvMQwmDThe Beatles0.631592Birthday - Remastered0.3737310.9100.2116350.075024
1875VsIn7QQqcacePIb0vO0owThe Beatles0.465201Not A Second Time - Remastered0.7738050.9610.1534530.075879
3665a6MdeIQcIFFKMBS2YqfgYThe Rolling Stones0.497954Terrifying - Remastered0.5838130.9130.1649060.084464
1543EbGioQyKyf4dycuiPOg3kThe Beatles0.438356Everybody's Trying To Be My Baby - Remastered0.8669850.9430.1440670.086846
4791fhjrbgaFD6Em5jih9tZJRThe Rolling Stones1.009583Beautiful Delilah - Saturday Club / 19640.4309680.9610.3438060.086880
230cJ053ljI4BuP5P8tJnK5jThe Beatles0.893485For You Blue - Remastered0.4718270.9550.3032100.087209
\n", "
" ], "text/plain": [ " _id artist_name lyrical_density \\\n", "51 3fuEJBCK3kWnJHFTODR4cb The Beatles 1.608806 \n", "390 4FHhq0QWpLSS6WZnkJnZp1 The Rolling Stones 0.312839 \n", "45 3TEbDhNDU4NDXq0h86nGZ7 The Beatles 1.008850 \n", "177 7cPPyMrSAQY7A686Cn9eUP The Beatles 0.891649 \n", "64 4KIXWIzNcKzorNDgvMQwmD The Beatles 0.631592 \n", "187 5VsIn7QQqcacePIb0vO0ow The Beatles 0.465201 \n", "366 5a6MdeIQcIFFKMBS2YqfgY The Rolling Stones 0.497954 \n", "154 3EbGioQyKyf4dycuiPOg3k The Beatles 0.438356 \n", "479 1fhjrbgaFD6Em5jih9tZJR The Rolling Stones 1.009583 \n", "23 0cJ053ljI4BuP5P8tJnK5j The Beatles 0.893485 \n", "\n", " name neg valence \\\n", "51 Ob-La-Di, Ob-La-Da - Remastered 0.101905 0.975 \n", "390 Feel On Baby - Remastered 0.784292 0.966 \n", "45 Hey Bulldog - Remastered 0.248855 0.947 \n", "177 All My Loving - Remastered 0.235023 0.900 \n", "64 Birthday - Remastered 0.373731 0.910 \n", "187 Not A Second Time - Remastered 0.773805 0.961 \n", "366 Terrifying - Remastered 0.583813 0.913 \n", "154 Everybody's Trying To Be My Baby - Remastered 0.866985 0.943 \n", "479 Beautiful Delilah - Saturday Club / 1964 0.430968 0.961 \n", "23 For You Blue - Remastered 0.471827 0.955 \n", "\n", " scaled_ld gloom \n", "51 0.553334 0.033777 \n", "390 0.100178 0.054581 \n", "45 0.343549 0.060143 \n", "177 0.302568 0.070427 \n", "64 0.211635 0.075024 \n", "187 0.153453 0.075879 \n", "366 0.164906 0.084464 \n", "154 0.144067 0.086846 \n", "479 0.343806 0.086880 \n", "23 0.303210 0.087209 " ] }, "execution_count": 286, "metadata": {}, "output_type": "execute_result" } ], "source": [ "results.sort_values('gloom', ascending=True).head(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "All the top ten most gleeful songs are from The Beatles!\n", "\n", "What about the most gleeful Radiohead songs?" ] }, { "cell_type": "code", "execution_count": 287, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namelyrical_densitynamenegvalencescaled_ldgloom
10eECFDnWy0RdjMmJ8NOeALRadiohead0.093389Feral0.4652160.7290.0234430.137777
2146dsq7Nt5mIFzvm5kIYNORyRadiohead0.67427215 Step0.8363560.8470.2265590.153910
2366CVdTDYoDbwYj4xn8u5GhaRadiohead0.452573Backdrifts0.8215320.7320.1490380.175249
24177SPrxY5gn6VPrKPGrfLnMRadiohead0.438813There, There0.8326110.7170.1442270.181134
22215ea10YpJIl3mJq75yzqsDRadiohead0.952216Jigsaw Falling Into Place0.7572250.8080.3237460.187495
2874HtPAkZnSyGtNvBnfDc2nwRadiohead0.609975Sulk0.5789470.6710.2040760.190004
2653OsUjkcv1C1v5udFhgRSFgRadiohead0.329999Airbag0.6423480.6480.1061780.191414
27153aFGAl0Vebwp2bo8wtdWRRadiohead2.019892Fitter Happier0.4468410.7440.6970760.194516
1711amSa5xo79zINsgrpNlNgeRadiohead0.782762Lotus Flower0.4182310.6210.2644940.194688
2306P67UTTr5qN7XYSSlj0n6XRadiohead0.503609Paperbag Writer0.7546800.6820.1668840.195437
\n", "
" ], "text/plain": [ " _id artist_name lyrical_density \\\n", "1 0eECFDnWy0RdjMmJ8NOeAL Radiohead 0.093389 \n", "214 6dsq7Nt5mIFzvm5kIYNORy Radiohead 0.674272 \n", "236 6CVdTDYoDbwYj4xn8u5Gha Radiohead 0.452573 \n", "241 77SPrxY5gn6VPrKPGrfLnM Radiohead 0.438813 \n", "222 15ea10YpJIl3mJq75yzqsD Radiohead 0.952216 \n", "287 4HtPAkZnSyGtNvBnfDc2nw Radiohead 0.609975 \n", "265 3OsUjkcv1C1v5udFhgRSFg Radiohead 0.329999 \n", "271 53aFGAl0Vebwp2bo8wtdWR Radiohead 2.019892 \n", "171 1amSa5xo79zINsgrpNlNge Radiohead 0.782762 \n", "230 6P67UTTr5qN7XYSSlj0n6X Radiohead 0.503609 \n", "\n", " name neg valence scaled_ld gloom \n", "1 Feral 0.465216 0.729 0.023443 0.137777 \n", "214 15 Step 0.836356 0.847 0.226559 0.153910 \n", "236 Backdrifts 0.821532 0.732 0.149038 0.175249 \n", "241 There, There 0.832611 0.717 0.144227 0.181134 \n", "222 Jigsaw Falling Into Place 0.757225 0.808 0.323746 0.187495 \n", "287 Sulk 0.578947 0.671 0.204076 0.190004 \n", "265 Airbag 0.642348 0.648 0.106178 0.191414 \n", "271 Fitter Happier 0.446841 0.744 0.697076 0.194516 \n", "171 Lotus Flower 0.418231 0.621 0.264494 0.194688 \n", "230 Paperbag Writer 0.754680 0.682 0.166884 0.195437 " ] }, "execution_count": 287, "metadata": {}, "output_type": "execute_result" } ], "source": [ "results[results['artist_name'] == 'Radiohead'].sort_values('gloom', ascending=True).head(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Contrasting songs\n", "Going back to the scatter plot of negativity against valence, there are some songs with a high valence (i.e. sound happy) with a high negativity (i.e. sad words). This seems unusual. What songs are they?\n", "\n", "* [Top](#top)\n", "\n", "These are the songs I mean:" ] }, { "cell_type": "code", "execution_count": 288, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n1fq5AAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "plt.scatter(beatles_df['valence'], beatles_df['neg'], color='blue')\n", "plt.scatter(stones_df['valence'], stones_df['neg'], color='red')\n", "plt.scatter(radiohead_df['valence'], radiohead_df['neg'], color='green')\n", "plt.xlabel('Valence')\n", "plt.ylabel('Sentiment negativity')\n", "\n", "ax = plt.gca()\n", "circ = plt.Circle((0.9, 0.8), radius=0.15, color='g', fill=False, linewidth=5)\n", "ax.add_patch(circ)\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 289, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namelyrical_densitynamenegvalencescaled_ldgloom
1357n1teNb2tkcfiYagPmUWrThe Beatles0.885556Two Of Us - Remastered0.7110800.9310.3004370.130952
214311wT21Et0q3vepFwXjTuThe Beatles0.718556One After 909 - Remastered0.8657370.8880.2420430.147219
3567jL5ZAf8hNsRZrfBHNuBTThe Beatles1.277562Mean Mr Mustard - Remastered0.7006310.9700.4375090.161703
430htnXrZwJvLllryAQU22JTThe Beatles0.591707Only A Northern Song - Remastered0.7358400.8010.1976890.152564
603OSi8ehmSWLTD5KatlzX8rThe Beatles0.733338Don't Pass Me By - Remastered0.8578310.9460.2472120.126358
614zExFATo8xg8qFfR4H1ZAnThe Beatles1.364176Why Don't We Do It In The Road? - Remastered0.7932420.9570.4677950.196980
827c76SiAfT7JkMiCm8BBCcPThe Beatles1.139628Hello, Goodbye - Remastered 20090.8271390.8060.3892780.220234
10177f3aNeabAbOaSB32Sd5QEThe Beatles1.620131Eleanor Rigby - Remastered0.7993260.8130.5572930.264123
13567tvBtAhsfHBFpuqJ13ZUqThe Beatles0.931018Act Naturally - Remastered0.7569470.9440.3163340.138867
1371k9tpndMDRwLkNt67Dlg02The Beatles1.408837You Like Me Too Much - Remastered0.7734060.8990.4834110.213024
13967VdmhC89bZ6yK2XRys0lAThe Beatles1.087652I've Just Seen A Face - Remastered0.8050820.9130.3711040.176741
142009oOX7tpCPLzRL9AFiBS8The Beatles1.242035No Reply - Remastered0.7819420.8690.4250860.203853
1435zs8tSd7ZvwBgr4NUmF5zMThe Beatles0.959827I'm A Loser - Remastered0.8121140.8560.3264080.181039
1443mKtIanz0poYgLnRxZrfBOThe Beatles1.501767Baby's In Black - Remastered0.8200880.8760.5159060.241558
15233BGv6xzxHh5E7v3r1hJLLThe Beatles1.314197I Don't Want To Spoil The Party - Remastered0.8178010.8890.4503190.214643
1532YHzfuuDFXzoELxJnqM4atThe Beatles0.626500What You're Doing - Remastered0.7519890.8250.2098540.148042
1543EbGioQyKyf4dycuiPOg3kThe Beatles0.438356Everybody's Trying To Be My Baby - Remastered0.8669850.9430.1440670.086846
1617KmRz1oKEwgj9qpfn72OfOThe Beatles1.509096Can't Buy Me Love - Remastered0.7383870.8420.5184680.229456
1633Aqo28W4LLAolYpN3duVJlThe Beatles1.349222I'll Cry Instead - Remastered0.8637720.9600.4625660.210524
1664dyALlslhDEzwSEr7GteXaThe Beatles1.246021You Can't Do That - Remastered0.7271640.9610.4264800.166244
1755tNjuWwp6FxuWCrKQAMBTjThe Beatles0.959614It Won't Be Long - Remastered0.7833880.8620.3263330.174306
1761JPTCjLHEtqofOFmHsfiAHThe Beatles1.036117All I've Got To Do - Remastered0.7211910.8790.3530840.166459
1780lLeGCsQlAbEjQBPQQxQ1bThe Beatles0.998293Don't Bother Me - Remastered0.8248790.9160.3398580.167897
17955nE9EppLFdb0I1HBg2O2mThe Beatles0.695489Little Child - Remastered0.8488860.8860.2339770.142973
1815IIBY9M2GxHcVja6DA6wsFThe Beatles1.362221Please Mister Postman - Remastered0.8152010.9610.4671110.200786
1836xJSJpO6HJwHhu7UaIc8qRThe Beatles0.585885Hold Me Tight - Remastered0.8048700.9630.1956530.093618
1863Ltllbv2lbpjP6NgPMNiFgThe Beatles1.101133Devil In Her Heart - Remastered0.7792200.9660.3758180.157033
1875VsIn7QQqcacePIb0vO0owThe Beatles0.465201Not A Second Time - Remastered0.7738050.9610.1534530.075879
19033OXG0RTtw0ycGza22tnF6The Beatles1.022599Misery - Remastered 20090.8142300.8820.3483570.180268
2146dsq7Nt5mIFzvm5kIYNORyRadiohead0.67427215 Step0.8363560.8470.2265590.153910
22215ea10YpJIl3mJq75yzqsDRadiohead0.952216Jigsaw Falling Into Place0.7572250.8080.3237460.187495
3015pTWpY8l7B1XcQnijEFGFjThe Rolling Stones1.015010Miss You - Remastered0.7577850.8280.3457030.187254
3024E8qFhiuYAWEYYAsYIf4dWThe Rolling Stones0.892857When The Whip Comes Down - Remastered0.7397090.8180.3029900.175490
3087pfVe0VrMK5QhTaAYzkuYnThe Rolling Stones1.142650Beast Of Burden - Remastered0.7403800.8660.3903350.185346
3125oAcuuY504M7eDCln5Xq89The Rolling Stones1.098231Do You Think I Really Care0.8107960.9270.3748030.174764
3184LW3JaAze7gF8DpPBb2zzlThe Rolling Stones1.411236I Love You Too Much0.7179670.8550.4842500.211230
3274sLirGgpkyL3RSdr13q3wdThe Rolling Stones1.329366She Saw Me Coming - Remastered0.8850880.8540.4556230.241373
3427fJ1QhCso6CG5RIv3S4rAjThe Rolling Stones1.148208You Don't Have To Mean It - Remastered0.7813410.9010.3922780.183334
3630Pm9eYltE97zx0tBjWiGOsThe Rolling Stones0.688109Mean Disposition - Remastered0.8403090.8300.2313970.162554
3721cYaiJpydNUcLC4PcMELF6The Rolling Stones0.876235Can't Be Seen - Remastered0.8329570.8670.2971780.170506
3815b8LAkfAKbuakf9xqRMTQRThe Rolling Stones0.849827Too Rude - Remastered0.7384550.8780.2879440.149752
3883eE947Xw6qPE1TqBMbUDgSThe Rolling Stones1.019161Tie You Up (The Pain Of Love) - Remastered0.8459100.8200.3471550.205587
3904FHhq0QWpLSS6WZnkJnZp1The Rolling Stones0.312839Feel On Baby - Remastered0.7842920.9660.1001780.054581
4044Q75gU2hFVL4oxqFpTiT3cThe Rolling Stones0.501468Dance (pt 1) - Remastered0.7006550.8950.1661350.101980
4124lJXLFf148gjn1qECYS5xtThe Rolling Stones1.321463She's So Cold - Remastered0.8219260.8410.4528590.229606
4276enjRsW81z7K8zk7XIGIizThe Rolling Stones0.160387Slave - Remastered0.8048350.8470.0468700.091776
4350r5d5LmhLQwJVEw0kTEExpSpice Girls0.455497Tell Me Why0.8499700.9190.1500600.098196
4542OtFl6ryjvaH3dGiTUUeh9The Rolling Stones1.992080Come On - Saturday Club / 19630.8821420.8150.6873520.332091
4574vfCh9kio2tM8KyzYjPIG1The Rolling Stones0.927070The Spider And The Fly - Yeah Yeah / 19650.7636780.8810.3149540.161022
4611YSw5TDTLGLvRHDaHB46HzThe Rolling Stones1.104910Memphis, Tennessee - Saturday Club / 19630.7110750.9440.3771380.151527
4636ZFlGszAyzdQH6SVoapmxeThe Rolling Stones1.563705The Last Time - Top Gear / 19650.8395510.8090.5375630.269819
4642tBmA66b4cxYm7o2iPz0bOThe Rolling Stones0.945513Cry To Me - Saturday Club / 19650.8926350.8480.3214020.195021
47255lElC5ScFprXpv2iaPf97The Rolling Stones1.379550I'm Moving On - The Joe Loss Pop Show / 19640.7218730.8060.4731700.221887
4775zkQRYB9g4rvqNFtbYjul5The Rolling Stones0.643919Little By Little - The Joe Loss Pop Show / 19640.7123650.8590.2159450.132192
4807whU5DaMEtXWqGuDrCiMvSThe Rolling Stones0.614215Crackin' Up - Top Gear / 19640.7054190.8240.2055590.142413
4810YTqcrcpMFZZlH3T91ljsyThe Rolling Stones0.677053I Can't Be Satisfied - Top Gear / 19640.8124050.9450.2275310.113667
4994NccLOSGgOlWPB96yN7wL9The Rolling Stones0.689132Bitch - Live0.8415790.8430.2317550.157827
5935UXwp4rKvtXtKJpe0iIctMThe Rolling Stones0.568314Miss You - Live0.7577850.8470.1895090.133806
\n", "
" ], "text/plain": [ " _id artist_name lyrical_density \\\n", "13 57n1teNb2tkcfiYagPmUWr The Beatles 0.885556 \n", "21 4311wT21Et0q3vepFwXjTu The Beatles 0.718556 \n", "35 67jL5ZAf8hNsRZrfBHNuBT The Beatles 1.277562 \n", "43 0htnXrZwJvLllryAQU22JT The Beatles 0.591707 \n", "60 3OSi8ehmSWLTD5KatlzX8r The Beatles 0.733338 \n", "61 4zExFATo8xg8qFfR4H1ZAn The Beatles 1.364176 \n", "82 7c76SiAfT7JkMiCm8BBCcP The Beatles 1.139628 \n", "101 77f3aNeabAbOaSB32Sd5QE The Beatles 1.620131 \n", "135 67tvBtAhsfHBFpuqJ13ZUq The Beatles 0.931018 \n", "137 1k9tpndMDRwLkNt67Dlg02 The Beatles 1.408837 \n", "139 67VdmhC89bZ6yK2XRys0lA The Beatles 1.087652 \n", "142 009oOX7tpCPLzRL9AFiBS8 The Beatles 1.242035 \n", "143 5zs8tSd7ZvwBgr4NUmF5zM The Beatles 0.959827 \n", "144 3mKtIanz0poYgLnRxZrfBO The Beatles 1.501767 \n", "152 33BGv6xzxHh5E7v3r1hJLL The Beatles 1.314197 \n", "153 2YHzfuuDFXzoELxJnqM4at The Beatles 0.626500 \n", "154 3EbGioQyKyf4dycuiPOg3k The Beatles 0.438356 \n", "161 7KmRz1oKEwgj9qpfn72OfO The Beatles 1.509096 \n", "163 3Aqo28W4LLAolYpN3duVJl The Beatles 1.349222 \n", "166 4dyALlslhDEzwSEr7GteXa The Beatles 1.246021 \n", "175 5tNjuWwp6FxuWCrKQAMBTj The Beatles 0.959614 \n", "176 1JPTCjLHEtqofOFmHsfiAH The Beatles 1.036117 \n", "178 0lLeGCsQlAbEjQBPQQxQ1b The Beatles 0.998293 \n", "179 55nE9EppLFdb0I1HBg2O2m The Beatles 0.695489 \n", "181 5IIBY9M2GxHcVja6DA6wsF The Beatles 1.362221 \n", "183 6xJSJpO6HJwHhu7UaIc8qR The Beatles 0.585885 \n", "186 3Ltllbv2lbpjP6NgPMNiFg The Beatles 1.101133 \n", "187 5VsIn7QQqcacePIb0vO0ow The Beatles 0.465201 \n", "190 33OXG0RTtw0ycGza22tnF6 The Beatles 1.022599 \n", "214 6dsq7Nt5mIFzvm5kIYNORy Radiohead 0.674272 \n", "222 15ea10YpJIl3mJq75yzqsD Radiohead 0.952216 \n", "301 5pTWpY8l7B1XcQnijEFGFj The Rolling Stones 1.015010 \n", "302 4E8qFhiuYAWEYYAsYIf4dW The Rolling Stones 0.892857 \n", "308 7pfVe0VrMK5QhTaAYzkuYn The Rolling Stones 1.142650 \n", "312 5oAcuuY504M7eDCln5Xq89 The Rolling Stones 1.098231 \n", "318 4LW3JaAze7gF8DpPBb2zzl The Rolling Stones 1.411236 \n", "327 4sLirGgpkyL3RSdr13q3wd The Rolling Stones 1.329366 \n", "342 7fJ1QhCso6CG5RIv3S4rAj The Rolling Stones 1.148208 \n", "363 0Pm9eYltE97zx0tBjWiGOs The Rolling Stones 0.688109 \n", "372 1cYaiJpydNUcLC4PcMELF6 The Rolling Stones 0.876235 \n", "381 5b8LAkfAKbuakf9xqRMTQR The Rolling Stones 0.849827 \n", "388 3eE947Xw6qPE1TqBMbUDgS The Rolling Stones 1.019161 \n", "390 4FHhq0QWpLSS6WZnkJnZp1 The Rolling Stones 0.312839 \n", "404 4Q75gU2hFVL4oxqFpTiT3c The Rolling Stones 0.501468 \n", "412 4lJXLFf148gjn1qECYS5xt The Rolling Stones 1.321463 \n", "427 6enjRsW81z7K8zk7XIGIiz The Rolling Stones 0.160387 \n", "435 0r5d5LmhLQwJVEw0kTEExp Spice Girls 0.455497 \n", "454 2OtFl6ryjvaH3dGiTUUeh9 The Rolling Stones 1.992080 \n", "457 4vfCh9kio2tM8KyzYjPIG1 The Rolling Stones 0.927070 \n", "461 1YSw5TDTLGLvRHDaHB46Hz The Rolling Stones 1.104910 \n", "463 6ZFlGszAyzdQH6SVoapmxe The Rolling Stones 1.563705 \n", "464 2tBmA66b4cxYm7o2iPz0bO The Rolling Stones 0.945513 \n", "472 55lElC5ScFprXpv2iaPf97 The Rolling Stones 1.379550 \n", "477 5zkQRYB9g4rvqNFtbYjul5 The Rolling Stones 0.643919 \n", "480 7whU5DaMEtXWqGuDrCiMvS The Rolling Stones 0.614215 \n", "481 0YTqcrcpMFZZlH3T91ljsy The Rolling Stones 0.677053 \n", "499 4NccLOSGgOlWPB96yN7wL9 The Rolling Stones 0.689132 \n", "593 5UXwp4rKvtXtKJpe0iIctM The Rolling Stones 0.568314 \n", "\n", " name neg valence \\\n", "13 Two Of Us - Remastered 0.711080 0.931 \n", "21 One After 909 - Remastered 0.865737 0.888 \n", "35 Mean Mr Mustard - Remastered 0.700631 0.970 \n", "43 Only A Northern Song - Remastered 0.735840 0.801 \n", "60 Don't Pass Me By - Remastered 0.857831 0.946 \n", "61 Why Don't We Do It In The Road? - Remastered 0.793242 0.957 \n", "82 Hello, Goodbye - Remastered 2009 0.827139 0.806 \n", "101 Eleanor Rigby - Remastered 0.799326 0.813 \n", "135 Act Naturally - Remastered 0.756947 0.944 \n", "137 You Like Me Too Much - Remastered 0.773406 0.899 \n", "139 I've Just Seen A Face - Remastered 0.805082 0.913 \n", "142 No Reply - Remastered 0.781942 0.869 \n", "143 I'm A Loser - Remastered 0.812114 0.856 \n", "144 Baby's In Black - Remastered 0.820088 0.876 \n", "152 I Don't Want To Spoil The Party - Remastered 0.817801 0.889 \n", "153 What You're Doing - Remastered 0.751989 0.825 \n", "154 Everybody's Trying To Be My Baby - Remastered 0.866985 0.943 \n", "161 Can't Buy Me Love - Remastered 0.738387 0.842 \n", "163 I'll Cry Instead - Remastered 0.863772 0.960 \n", "166 You Can't Do That - Remastered 0.727164 0.961 \n", "175 It Won't Be Long - Remastered 0.783388 0.862 \n", "176 All I've Got To Do - Remastered 0.721191 0.879 \n", "178 Don't Bother Me - Remastered 0.824879 0.916 \n", "179 Little Child - Remastered 0.848886 0.886 \n", "181 Please Mister Postman - Remastered 0.815201 0.961 \n", "183 Hold Me Tight - Remastered 0.804870 0.963 \n", "186 Devil In Her Heart - Remastered 0.779220 0.966 \n", "187 Not A Second Time - Remastered 0.773805 0.961 \n", "190 Misery - Remastered 2009 0.814230 0.882 \n", "214 15 Step 0.836356 0.847 \n", "222 Jigsaw Falling Into Place 0.757225 0.808 \n", "301 Miss You - Remastered 0.757785 0.828 \n", "302 When The Whip Comes Down - Remastered 0.739709 0.818 \n", "308 Beast Of Burden - Remastered 0.740380 0.866 \n", "312 Do You Think I Really Care 0.810796 0.927 \n", "318 I Love You Too Much 0.717967 0.855 \n", "327 She Saw Me Coming - Remastered 0.885088 0.854 \n", "342 You Don't Have To Mean It - Remastered 0.781341 0.901 \n", "363 Mean Disposition - Remastered 0.840309 0.830 \n", "372 Can't Be Seen - Remastered 0.832957 0.867 \n", "381 Too Rude - Remastered 0.738455 0.878 \n", "388 Tie You Up (The Pain Of Love) - Remastered 0.845910 0.820 \n", "390 Feel On Baby - Remastered 0.784292 0.966 \n", "404 Dance (pt 1) - Remastered 0.700655 0.895 \n", "412 She's So Cold - Remastered 0.821926 0.841 \n", "427 Slave - Remastered 0.804835 0.847 \n", "435 Tell Me Why 0.849970 0.919 \n", "454 Come On - Saturday Club / 1963 0.882142 0.815 \n", "457 The Spider And The Fly - Yeah Yeah / 1965 0.763678 0.881 \n", "461 Memphis, Tennessee - Saturday Club / 1963 0.711075 0.944 \n", "463 The Last Time - Top Gear / 1965 0.839551 0.809 \n", "464 Cry To Me - Saturday Club / 1965 0.892635 0.848 \n", "472 I'm Moving On - The Joe Loss Pop Show / 1964 0.721873 0.806 \n", "477 Little By Little - The Joe Loss Pop Show / 1964 0.712365 0.859 \n", "480 Crackin' Up - Top Gear / 1964 0.705419 0.824 \n", "481 I Can't Be Satisfied - Top Gear / 1964 0.812405 0.945 \n", "499 Bitch - Live 0.841579 0.843 \n", "593 Miss You - Live 0.757785 0.847 \n", "\n", " scaled_ld gloom \n", "13 0.300437 0.130952 \n", "21 0.242043 0.147219 \n", "35 0.437509 0.161703 \n", "43 0.197689 0.152564 \n", "60 0.247212 0.126358 \n", "61 0.467795 0.196980 \n", "82 0.389278 0.220234 \n", "101 0.557293 0.264123 \n", "135 0.316334 0.138867 \n", "137 0.483411 0.213024 \n", "139 0.371104 0.176741 \n", "142 0.425086 0.203853 \n", "143 0.326408 0.181039 \n", "144 0.515906 0.241558 \n", "152 0.450319 0.214643 \n", "153 0.209854 0.148042 \n", "154 0.144067 0.086846 \n", "161 0.518468 0.229456 \n", "163 0.462566 0.210524 \n", "166 0.426480 0.166244 \n", "175 0.326333 0.174306 \n", "176 0.353084 0.166459 \n", "178 0.339858 0.167897 \n", "179 0.233977 0.142973 \n", "181 0.467111 0.200786 \n", "183 0.195653 0.093618 \n", "186 0.375818 0.157033 \n", "187 0.153453 0.075879 \n", "190 0.348357 0.180268 \n", "214 0.226559 0.153910 \n", "222 0.323746 0.187495 \n", "301 0.345703 0.187254 \n", "302 0.302990 0.175490 \n", "308 0.390335 0.185346 \n", "312 0.374803 0.174764 \n", "318 0.484250 0.211230 \n", "327 0.455623 0.241373 \n", "342 0.392278 0.183334 \n", "363 0.231397 0.162554 \n", "372 0.297178 0.170506 \n", "381 0.287944 0.149752 \n", "388 0.347155 0.205587 \n", "390 0.100178 0.054581 \n", "404 0.166135 0.101980 \n", "412 0.452859 0.229606 \n", "427 0.046870 0.091776 \n", "435 0.150060 0.098196 \n", "454 0.687352 0.332091 \n", "457 0.314954 0.161022 \n", "461 0.377138 0.151527 \n", "463 0.537563 0.269819 \n", "464 0.321402 0.195021 \n", "472 0.473170 0.221887 \n", "477 0.215945 0.132192 \n", "480 0.205559 0.142413 \n", "481 0.227531 0.113667 \n", "499 0.231755 0.157827 \n", "593 0.189509 0.133806 " ] }, "execution_count": 289, "metadata": {}, "output_type": "execute_result" } ], "source": [ "results[(results['valence'] > 0.8) & (results['neg'] > 0.7)]" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "That's interesting. This list contains a lot of the Beatles' most well-known songs. Is there something in this?\n", "\n", "Let's define \"complexity\" as the product of valence and negativity, and see which are the most complext songs." ] }, { "cell_type": "code", "execution_count": 290, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namelyrical_densitynamenegvalencescaled_ldgloomcomplexity
1633Aqo28W4LLAolYpN3duVJlThe Beatles1.349222I'll Cry Instead - Remastered0.8637720.9600.4625660.2105240.829221
1543EbGioQyKyf4dycuiPOg3kThe Beatles0.438356Everybody's Trying To Be My Baby - Remastered0.8669850.9430.1440670.0868460.817567
603OSi8ehmSWLTD5KatlzX8rThe Beatles0.733338Don't Pass Me By - Remastered0.8578310.9460.2472120.1263580.811508
1815IIBY9M2GxHcVja6DA6wsFThe Beatles1.362221Please Mister Postman - Remastered0.8152010.9610.4671110.2007860.783408
4350r5d5LmhLQwJVEw0kTEExpSpice Girls0.455497Tell Me Why0.8499700.9190.1500600.0981960.781122
1836xJSJpO6HJwHhu7UaIc8qRThe Beatles0.585885Hold Me Tight - Remastered0.8048700.9630.1956530.0936180.775090
214311wT21Et0q3vepFwXjTuThe Beatles0.718556One After 909 - Remastered0.8657370.8880.2420430.1472190.768775
4810YTqcrcpMFZZlH3T91ljsyThe Rolling Stones0.677053I Can't Be Satisfied - Top Gear / 19640.8124050.9450.2275310.1136670.767723
614zExFATo8xg8qFfR4H1ZAnThe Beatles1.364176Why Don't We Do It In The Road? - Remastered0.7932420.9570.4677950.1969800.759132
3904FHhq0QWpLSS6WZnkJnZp1The Rolling Stones0.312839Feel On Baby - Remastered0.7842920.9660.1001780.0545810.757626
\n", "
" ], "text/plain": [ " _id artist_name lyrical_density \\\n", "163 3Aqo28W4LLAolYpN3duVJl The Beatles 1.349222 \n", "154 3EbGioQyKyf4dycuiPOg3k The Beatles 0.438356 \n", "60 3OSi8ehmSWLTD5KatlzX8r The Beatles 0.733338 \n", "181 5IIBY9M2GxHcVja6DA6wsF The Beatles 1.362221 \n", "435 0r5d5LmhLQwJVEw0kTEExp Spice Girls 0.455497 \n", "183 6xJSJpO6HJwHhu7UaIc8qR The Beatles 0.585885 \n", "21 4311wT21Et0q3vepFwXjTu The Beatles 0.718556 \n", "481 0YTqcrcpMFZZlH3T91ljsy The Rolling Stones 0.677053 \n", "61 4zExFATo8xg8qFfR4H1ZAn The Beatles 1.364176 \n", "390 4FHhq0QWpLSS6WZnkJnZp1 The Rolling Stones 0.312839 \n", "\n", " name neg valence \\\n", "163 I'll Cry Instead - Remastered 0.863772 0.960 \n", "154 Everybody's Trying To Be My Baby - Remastered 0.866985 0.943 \n", "60 Don't Pass Me By - Remastered 0.857831 0.946 \n", "181 Please Mister Postman - Remastered 0.815201 0.961 \n", "435 Tell Me Why 0.849970 0.919 \n", "183 Hold Me Tight - Remastered 0.804870 0.963 \n", "21 One After 909 - Remastered 0.865737 0.888 \n", "481 I Can't Be Satisfied - Top Gear / 1964 0.812405 0.945 \n", "61 Why Don't We Do It In The Road? - Remastered 0.793242 0.957 \n", "390 Feel On Baby - Remastered 0.784292 0.966 \n", "\n", " scaled_ld gloom complexity \n", "163 0.462566 0.210524 0.829221 \n", "154 0.144067 0.086846 0.817567 \n", "60 0.247212 0.126358 0.811508 \n", "181 0.467111 0.200786 0.783408 \n", "435 0.150060 0.098196 0.781122 \n", "183 0.195653 0.093618 0.775090 \n", "21 0.242043 0.147219 0.768775 \n", "481 0.227531 0.113667 0.767723 \n", "61 0.467795 0.196980 0.759132 \n", "390 0.100178 0.054581 0.757626 " ] }, "execution_count": 290, "metadata": {}, "output_type": "execute_result" } ], "source": [ "results['complexity'] = results['valence'] * results['neg']\n", "results.sort_values('complexity', ascending=False).head(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "There's possibly something in it. The most \"complex\" song has a very upbeat pop tune and very sad lyrics. The others are similarly interesting.\n", "\n", "What about the least \"complex\" songs?" ] }, { "cell_type": "code", "execution_count": 291, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namelyrical_densitynamenegvalencescaled_ldgloomcomplexity
2106f6pEjgfTtuRROmJ4a7Gf3Radiohead0.393192The Numbers0.2920080.05520.1282750.4305320.016119
1130agoaPIy92gPZ6zRhqXarEThe Beatles0.634931Tomorrow Never Knows - Remastered0.3435990.05340.2128030.4091400.018348
4971CEZV1nYaEeqhWz73HKF3gThe Rolling Stones1.541667Intro - Live0.7240380.02630.5298570.4207070.019042
21301ZpFhrMMqKPVCwyqXneVpRadiohead0.218723True Love Waits0.5322060.03790.0672680.4665910.020171
23953RYTfkLiyZuUZHwJC3WmmRadiohead0.276367We Suck Young Blood0.5353580.03780.0874250.4624420.020237
2123cual6JOG286qZJmCxKRATRadiohead0.332577Tinker Tailor Soldier Sailor Rich Man Poor Man...0.4773220.05070.1070800.4493800.024200
2640COiZ7ncho2yi4HotbzgPvRadiohead0.349157Motion Picture Soundtrack0.5768080.04350.1128770.4568210.025091
27675YUnz58ajMo2VIIuUFvOVRadiohead0.248061The Tourist0.6678640.03980.0775270.4687680.026581
25529yXMFKIrY1fFY4DYBVZCuRadiohead0.567416Life In a Glasshouse0.6059760.04970.1891950.4425780.030117
790ttMfoND7IQqFSMVOPkELCThe Beatles0.799772Blue Jay Way - Remastered 20090.8025570.03780.2704420.4595130.030337
\n", "
" ], "text/plain": [ " _id artist_name lyrical_density \\\n", "210 6f6pEjgfTtuRROmJ4a7Gf3 Radiohead 0.393192 \n", "113 0agoaPIy92gPZ6zRhqXarE The Beatles 0.634931 \n", "497 1CEZV1nYaEeqhWz73HKF3g The Rolling Stones 1.541667 \n", "213 01ZpFhrMMqKPVCwyqXneVp Radiohead 0.218723 \n", "239 53RYTfkLiyZuUZHwJC3Wmm Radiohead 0.276367 \n", "212 3cual6JOG286qZJmCxKRAT Radiohead 0.332577 \n", "264 0COiZ7ncho2yi4HotbzgPv Radiohead 0.349157 \n", "276 75YUnz58ajMo2VIIuUFvOV Radiohead 0.248061 \n", "255 29yXMFKIrY1fFY4DYBVZCu Radiohead 0.567416 \n", "79 0ttMfoND7IQqFSMVOPkELC The Beatles 0.799772 \n", "\n", " name neg valence \\\n", "210 The Numbers 0.292008 0.0552 \n", "113 Tomorrow Never Knows - Remastered 0.343599 0.0534 \n", "497 Intro - Live 0.724038 0.0263 \n", "213 True Love Waits 0.532206 0.0379 \n", "239 We Suck Young Blood 0.535358 0.0378 \n", "212 Tinker Tailor Soldier Sailor Rich Man Poor Man... 0.477322 0.0507 \n", "264 Motion Picture Soundtrack 0.576808 0.0435 \n", "276 The Tourist 0.667864 0.0398 \n", "255 Life In a Glasshouse 0.605976 0.0497 \n", "79 Blue Jay Way - Remastered 2009 0.802557 0.0378 \n", "\n", " scaled_ld gloom complexity \n", "210 0.128275 0.430532 0.016119 \n", "113 0.212803 0.409140 0.018348 \n", "497 0.529857 0.420707 0.019042 \n", "213 0.067268 0.466591 0.020171 \n", "239 0.087425 0.462442 0.020237 \n", "212 0.107080 0.449380 0.024200 \n", "264 0.112877 0.456821 0.025091 \n", "276 0.077527 0.468768 0.026581 \n", "255 0.189195 0.442578 0.030117 \n", "79 0.270442 0.459513 0.030337 " ] }, "execution_count": 291, "metadata": {}, "output_type": "execute_result" } ], "source": [ "results.sort_values('complexity', ascending=True).head(10)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Interestingly, all of the \"complex\" songs are by The Beatles, while most of the least \"complex\" songs are by Radiohead. How true is that for all songs?" ] }, { "cell_type": "code", "execution_count": 292, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "" ] }, "execution_count": 292, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "results[results['artist_name'] == 'The Beatles']['complexity'].hist(alpha=0.5, color='blue')\n", "results[results['artist_name'] == 'The Rolling Stones']['complexity'].hist(alpha=0.5, color='red')\n", "results[results['artist_name'] == 'Radiohead']['complexity'].hist(alpha=0.5, color='green')" ] }, { "cell_type": "code", "execution_count": 293, "metadata": { "scrolled": true }, "outputs": [], "source": [ "# Push the results back into the database\n", "for row in results.itertuples():\n", " unfiltered_tracks.update_one({'_id': row[1]}, {'$set': {'complexity': row.complexity}})" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "### Average gloom per album\n", "How close can we easily get to the final plot at the end of the fitteR happieR post?\n", "\n", "First, we find average gloom per album.\n", "\n", "* [Top](#top)" ] }, { "cell_type": "code", "execution_count": 294, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "defaultdict(int,\n", " {'03Qh833fEdVT30Pfs93ea6': 0.24504854934983758,\n", " '064eFGemsrDcMvgRZ0gqtw': 0.21452555555171524,\n", " '0PYyrqs9NXtxPhf0CZkq2L': 0.23506412219180753,\n", " '0ZGddnvcVzHVHfE3WW1tV5': 0.2759842123305305,\n", " '0aWIIpfY32rT1i3yO9LROl': 0.27338394609475597,\n", " '19K3IHYeVkUTjcBHGfbCOi': 0.22146657790197213,\n", " '19RUXBFyM4PpmrLRdtqWbp': 0.34123914793205096,\n", " '1DBkJIEoeHrTX4WCBQGcCi': 0.2804468995897004,\n", " '1PULmKbHeOqlkIwcDMNwD4': 0.2262582630601231,\n", " '1WSfNoPDPzgyKFN6OSYWUx': 0.25301349538560225,\n", " '1YvnuYGlblQ5vLnOhaZzpn': 0.19666663896330405,\n", " '1oW3v5Har9mvXnGk0x4fHm': 0.3124460078426787,\n", " '25mfHGJNQkluvIqedXHSx3': 0.17990617220181726,\n", " '2Pqkn9Dq2DFtdfkKAeqgMd': 0.2872466899672893,\n", " '2b3y5k1DchDACjH5KMlgQv': 0.2990206778922061,\n", " '2gCp8kyDcL93s4kVP4VMTC': 0.23989132903761987,\n", " '2pCqZLeavM2BMovJXsJEIV': 0.21949856281177427,\n", " '2wZgoXS06wSdu9C0ZJOvlc': 0.23600173441715305,\n", " '34d9ClCaKRoQ8pMeJ9Gfvt': 0.277306303292661,\n", " '36lJLPoPPOKNFddTAcirnc': 0.38006810447920286,\n", " '3LXItxKnnJcEDc5QdTc00n': 0.2741751173049687,\n", " '3OdI6e43crvyAHhaqpxSyz': 0.21252881775854668,\n", " '3nkEsxmIX0zRNXGAexaHAn': 0.15189075415972186,\n", " '3wkyUMDuH56iNaSxKvukax': 0.2927149443781526,\n", " '3yNf6JVyEEqvM4OqKEmZSC': 0.21129550461958602,\n", " '47bcKzmKgmMPHXNVOWpLiu': 0.17847156130701292,\n", " '4FTHynKEtuP7eppERNfjyG': 0.25222158906001974,\n", " '4g9Jfls8z2nbQxj5PiXkiy': 0.2729613078393971,\n", " '4jbWZmf7kRxCBD6tgVepYh': 0.20958052073988037,\n", " '500FEaUzn8lN9zWFyZG5C2': 0.3404830921294893,\n", " '5D7RtaChuvF0Av1xXT3acu': 0.2817340507947079,\n", " '5ju5Ouzan3QwXqQt1Tihbh': 0.182972741723138,\n", " '62ZT16LY1phGM0O8x5qW1z': 0.2505559311666166,\n", " '6400dnyeDyD2mIFHfkwHXN': 0.34239236834111514,\n", " '6Eo5EkmdLvZrONzi046iC2': 0.262193465914564,\n", " '6FjXxl9VLURGuubdXUn2J3': 0.22761373734656876,\n", " '6P9yO0ukhOx3dvmhGKeYoC': 0.2661634638015738,\n", " '6V9YnBmFjWmXCBaUVRCVXP': 0.3722139260352282,\n", " '6hB5kO3oV3tlnblCNSSA9Z': 0.21098171855431014,\n", " '6iCIB08bkoitQOL5y2uEsM': 0.29374483436289883,\n", " '6vuykQgDLUCiZ7YggIpLM9': 0.3811589072698345,\n", " '71Mwd9tntFQYUk4k2DwA0D': 0.21628077407656884,\n", " '7BgGBZndAvDlKOcwe5rscZ': 0.17613388315154788,\n", " '7Hk1X2BCADxuR9saTIKfOW': 0.20097448125778025,\n", " '7dxKtc08dYeRVHt3p9CZJn': 0.3504691123775876,\n", " '7eyQXxuf2nGj9d2367Gi5f': 0.32364774545338976,\n", " '7gDXyW16byCQOgK965BRzn': 0.18443374970273932})" ] }, "execution_count": 294, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pipeline = [\n", " {'$match': {'gloom': {'$exists': True}}},\n", " {'$group': {'_id': '$album.id', 'avg_gloom': {'$avg': '$gloom'}}}]\n", "album_glooms = collections.defaultdict(int, {a['_id']: a['avg_gloom'] for a in tracks.aggregate(pipeline)})\n", "album_glooms" ] }, { "cell_type": "code", "execution_count": 295, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namenamerelease_dategloom
157gDXyW16byCQOgK965BRznThe BeatlesPlease Please Me (Remastered)1963-03-220.184434
143nkEsxmIX0zRNXGAexaHAnThe BeatlesWith The Beatles (Remastered)1963-11-220.151891
1271Mwd9tntFQYUk4k2DwA0DThe BeatlesA Hard Day's Night (Remastered)1964-07-100.216281
117BgGBZndAvDlKOcwe5rscZThe BeatlesBeatles For Sale (Remastered)1964-12-040.176134
1019K3IHYeVkUTjcBHGfbCOiThe BeatlesHelp! (Remastered)1965-08-060.221467
93OdI6e43crvyAHhaqpxSyzThe BeatlesRubber Soul (Remastered)1965-12-030.212529
80PYyrqs9NXtxPhf0CZkq2LThe BeatlesRevolver (Remastered)1966-08-050.235064
71PULmKbHeOqlkIwcDMNwD4The BeatlesSgt. Pepper's Lonely Hearts Club Band (Remaste...1967-06-010.226258
513LXItxKnnJcEDc5QdTc00nThe BeatlesSgt. Pepper's Lonely Hearts Club Band (Deluxe ...1967-06-010.274175
66P9yO0ukhOx3dvmhGKeYoCThe BeatlesMagical Mystery Tour (Remastered)1967-11-270.266163
503Qh833fEdVT30Pfs93ea6The BeatlesThe Beatles (Remastered)1968-11-220.245049
447bcKzmKgmMPHXNVOWpLiuThe BeatlesYellow Submarine (Remastered)1969-01-170.178472
32Pqkn9Dq2DFtdfkKAeqgMdThe BeatlesAbbey Road (Remastered)1969-09-260.287247
22pCqZLeavM2BMovJXsJEIVThe BeatlesLet It Be (Remastered)1970-05-080.219499
4654sqbAXxR1jFfyXb1WvrHKThe Rolling StonesSome Girls1978-06-090.000000
476FjXxl9VLURGuubdXUn2J3The Rolling StonesSome Girls (Deluxe Version)1978-06-090.227614
452wZgoXS06wSdu9C0ZJOvlcThe Rolling StonesEmotional Rescue (2009 Re-Mastered)1980-06-200.236002
441YvnuYGlblQ5vLnOhaZzpnThe Rolling StonesTattoo You (2009 Re-Mastered)1981-08-240.196667
430hxrNynMDh5QeyALlf1CdSThe Rolling StonesStill Life1982-06-010.000000
42064eFGemsrDcMvgRZ0gqtwThe Rolling StonesUndercover (2009 Re-Mastered)1983-11-070.214526
411WSfNoPDPzgyKFN6OSYWUxThe Rolling StonesDirty Work (Remastered 2009)1986-03-240.253013
401TpcI1LEFVhBvDPSTMPGFGThe Rolling StonesDirty Work1986-03-240.000000
3925mfHGJNQkluvIqedXHSx3The Rolling StonesSteel Wheels (2009 Re-Mastered)1989-08-290.179906
381W1UJulgICjFDyYIMUwRs7The Rolling StonesFlashpoint1991-04-020.000000
276400dnyeDyD2mIFHfkwHXNRadioheadPablo Honey1993-02-220.342392
3762ZT16LY1phGM0O8x5qW1zThe Rolling StonesVoodoo Lounge (Remastered 2009)1994-07-110.250556
364M8Q1L9PZq0xK5tLUpO3jdThe Rolling StonesStripped1995-01-130.000000
26500FEaUzn8lN9zWFyZG5C2RadioheadThe Bends1995-03-280.340483
503x2jF7blR6bFHtk4MccsyJSpice GirlsSpice1996-11-040.000000
257dxKtc08dYeRVHt3p9CZJnRadioheadOK Computer1997-05-280.350469
..................
2419RUXBFyM4PpmrLRdtqWbpRadioheadKid A2000-10-010.341239
484jbWZmf7kRxCBD6tgVepYhSpice GirlsForever2000-11-060.209581
15ju5Ouzan3QwXqQt1TihbhThe Beatles1 (Remastered)2000-11-130.182973
226svTt5o2lUgIrgYDKVmdnDRadioheadI Might Be Wrong2001-01-010.000000
236V9YnBmFjWmXCBaUVRCVXPRadioheadAmnesiac2001-03-120.372214
211oW3v5Har9mvXnGk0x4fHmRadioheadHail To the Thief2003-01-010.312446
206Eo5EkmdLvZrONzi046iC2RadioheadCom Lag: 2+2=52004-03-240.262193
3450UGtgNA5bq1c0BDjPfmbDThe Rolling StonesLive Licks2004-11-010.000000
334FTHynKEtuP7eppERNfjyGThe Rolling StonesA Bigger Bang (2009 Re-Mastered)2005-09-050.252222
1936lJLPoPPOKNFddTAcirncRadioheadIn Rainbows Disk 22007-01-010.380068
187eyQXxuf2nGj9d2367Gi5fRadioheadIn Rainbows2007-12-280.323648
323CHu7qW160uqPZHW3TMZ1lThe Rolling StonesShine A Light2008-01-010.000000
131DBkJIEoeHrTX4WCBQGcCiRadioheadThe King Of Limbs2011-02-180.280447
1747xaqCsJcYFWqD1gwujl1TRadioheadTKOL RMX 12345672011-10-100.000000
612gCp8kyDcL93s4kVP4VMTCThe Rolling StonesSome Girls: Live In Texas '782011-11-210.239891
603yNf6JVyEEqvM4OqKEmZSCMuddy WatersLive At The Checkerboard Lounge2012-07-090.211296
596hB5kO3oV3tlnblCNSSA9ZMuddy WatersLive At The Checkerboard Lounge2012-07-090.210982
315eTqRwTGKPBUiUuN1rFaXDThe Rolling StonesLive 1965: Music From Charlie Is My Darling (L...2012-11-060.000000
166vuykQgDLUCiZ7YggIpLM9RadioheadA Moon Shaped Pool2016-05-080.381159
583wkyUMDuH56iNaSxKvukaxThe Rolling StonesTotally Stripped - Paris (Live)2016-05-200.292715
572b3y5k1DchDACjH5KMlgQvThe Rolling StonesTotally Stripped - Amsterdam (Live)2016-06-030.299021
565D7RtaChuvF0Av1xXT3acuThe Rolling StonesTotally Stripped - Brixton (Live)2016-06-060.281734
550aWIIpfY32rT1i3yO9LROlThe Rolling StonesTotally Stripped (Live)2016-06-170.273384
303PbRKFafwE7Of8e4dTee72The Rolling StonesTotally Stripped (Live)2016-06-170.000000
05XfJmldgWzrc1AIdbBaVZnThe BeatlesLive At The Hollywood Bowl2016-09-090.000000
294fhWcu56Bbh5wALuTouFVWThe Rolling StonesHavana Moon (Live)2016-11-110.000000
284g9Jfls8z2nbQxj5PiXkiyThe Rolling StonesBlue & Lonesome2016-12-020.272961
5434d9ClCaKRoQ8pMeJ9GfvtThe Rolling StonesLadies & Gentlemen (Live)2017-06-070.277306
536iCIB08bkoitQOL5y2uEsMThe Rolling StonesSticky Fingers Live At The Fonda Theatre2017-09-290.293745
527Hk1X2BCADxuR9saTIKfOWThe Rolling StonesOn Air (Deluxe)2017-12-010.200974
\n", "

62 rows × 5 columns

\n", "
" ], "text/plain": [ " _id artist_name \\\n", "15 7gDXyW16byCQOgK965BRzn The Beatles \n", "14 3nkEsxmIX0zRNXGAexaHAn The Beatles \n", "12 71Mwd9tntFQYUk4k2DwA0D The Beatles \n", "11 7BgGBZndAvDlKOcwe5rscZ The Beatles \n", "10 19K3IHYeVkUTjcBHGfbCOi The Beatles \n", "9 3OdI6e43crvyAHhaqpxSyz The Beatles \n", "8 0PYyrqs9NXtxPhf0CZkq2L The Beatles \n", "7 1PULmKbHeOqlkIwcDMNwD4 The Beatles \n", "51 3LXItxKnnJcEDc5QdTc00n The Beatles \n", "6 6P9yO0ukhOx3dvmhGKeYoC The Beatles \n", "5 03Qh833fEdVT30Pfs93ea6 The Beatles \n", "4 47bcKzmKgmMPHXNVOWpLiu The Beatles \n", "3 2Pqkn9Dq2DFtdfkKAeqgMd The Beatles \n", "2 2pCqZLeavM2BMovJXsJEIV The Beatles \n", "46 54sqbAXxR1jFfyXb1WvrHK The Rolling Stones \n", "47 6FjXxl9VLURGuubdXUn2J3 The Rolling Stones \n", "45 2wZgoXS06wSdu9C0ZJOvlc The Rolling Stones \n", "44 1YvnuYGlblQ5vLnOhaZzpn The Rolling Stones \n", "43 0hxrNynMDh5QeyALlf1CdS The Rolling Stones \n", "42 064eFGemsrDcMvgRZ0gqtw The Rolling Stones \n", "41 1WSfNoPDPzgyKFN6OSYWUx The Rolling Stones \n", "40 1TpcI1LEFVhBvDPSTMPGFG The Rolling Stones \n", "39 25mfHGJNQkluvIqedXHSx3 The Rolling Stones \n", "38 1W1UJulgICjFDyYIMUwRs7 The Rolling Stones \n", "27 6400dnyeDyD2mIFHfkwHXN Radiohead \n", "37 62ZT16LY1phGM0O8x5qW1z The Rolling Stones \n", "36 4M8Q1L9PZq0xK5tLUpO3jd The Rolling Stones \n", "26 500FEaUzn8lN9zWFyZG5C2 Radiohead \n", "50 3x2jF7blR6bFHtk4MccsyJ Spice Girls \n", "25 7dxKtc08dYeRVHt3p9CZJn Radiohead \n", ".. ... ... \n", "24 19RUXBFyM4PpmrLRdtqWbp Radiohead \n", "48 4jbWZmf7kRxCBD6tgVepYh Spice Girls \n", "1 5ju5Ouzan3QwXqQt1Tihbh The Beatles \n", "22 6svTt5o2lUgIrgYDKVmdnD Radiohead \n", "23 6V9YnBmFjWmXCBaUVRCVXP Radiohead \n", "21 1oW3v5Har9mvXnGk0x4fHm Radiohead \n", "20 6Eo5EkmdLvZrONzi046iC2 Radiohead \n", "34 50UGtgNA5bq1c0BDjPfmbD The Rolling Stones \n", "33 4FTHynKEtuP7eppERNfjyG The Rolling Stones \n", "19 36lJLPoPPOKNFddTAcirnc Radiohead \n", "18 7eyQXxuf2nGj9d2367Gi5f Radiohead \n", "32 3CHu7qW160uqPZHW3TMZ1l The Rolling Stones \n", "13 1DBkJIEoeHrTX4WCBQGcCi Radiohead \n", "17 47xaqCsJcYFWqD1gwujl1T Radiohead \n", "61 2gCp8kyDcL93s4kVP4VMTC The Rolling Stones \n", "60 3yNf6JVyEEqvM4OqKEmZSC Muddy Waters \n", "59 6hB5kO3oV3tlnblCNSSA9Z Muddy Waters \n", "31 5eTqRwTGKPBUiUuN1rFaXD The Rolling Stones \n", "16 6vuykQgDLUCiZ7YggIpLM9 Radiohead \n", "58 3wkyUMDuH56iNaSxKvukax The Rolling Stones \n", "57 2b3y5k1DchDACjH5KMlgQv The Rolling Stones \n", "56 5D7RtaChuvF0Av1xXT3acu The Rolling Stones \n", "55 0aWIIpfY32rT1i3yO9LROl The Rolling Stones \n", "30 3PbRKFafwE7Of8e4dTee72 The Rolling Stones \n", "0 5XfJmldgWzrc1AIdbBaVZn The Beatles \n", "29 4fhWcu56Bbh5wALuTouFVW The Rolling Stones \n", "28 4g9Jfls8z2nbQxj5PiXkiy The Rolling Stones \n", "54 34d9ClCaKRoQ8pMeJ9Gfvt The Rolling Stones \n", "53 6iCIB08bkoitQOL5y2uEsM The Rolling Stones \n", "52 7Hk1X2BCADxuR9saTIKfOW The Rolling Stones \n", "\n", " name release_date gloom \n", "15 Please Please Me (Remastered) 1963-03-22 0.184434 \n", "14 With The Beatles (Remastered) 1963-11-22 0.151891 \n", "12 A Hard Day's Night (Remastered) 1964-07-10 0.216281 \n", "11 Beatles For Sale (Remastered) 1964-12-04 0.176134 \n", "10 Help! (Remastered) 1965-08-06 0.221467 \n", "9 Rubber Soul (Remastered) 1965-12-03 0.212529 \n", "8 Revolver (Remastered) 1966-08-05 0.235064 \n", "7 Sgt. Pepper's Lonely Hearts Club Band (Remaste... 1967-06-01 0.226258 \n", "51 Sgt. Pepper's Lonely Hearts Club Band (Deluxe ... 1967-06-01 0.274175 \n", "6 Magical Mystery Tour (Remastered) 1967-11-27 0.266163 \n", "5 The Beatles (Remastered) 1968-11-22 0.245049 \n", "4 Yellow Submarine (Remastered) 1969-01-17 0.178472 \n", "3 Abbey Road (Remastered) 1969-09-26 0.287247 \n", "2 Let It Be (Remastered) 1970-05-08 0.219499 \n", "46 Some Girls 1978-06-09 0.000000 \n", "47 Some Girls (Deluxe Version) 1978-06-09 0.227614 \n", "45 Emotional Rescue (2009 Re-Mastered) 1980-06-20 0.236002 \n", "44 Tattoo You (2009 Re-Mastered) 1981-08-24 0.196667 \n", "43 Still Life 1982-06-01 0.000000 \n", "42 Undercover (2009 Re-Mastered) 1983-11-07 0.214526 \n", "41 Dirty Work (Remastered 2009) 1986-03-24 0.253013 \n", "40 Dirty Work 1986-03-24 0.000000 \n", "39 Steel Wheels (2009 Re-Mastered) 1989-08-29 0.179906 \n", "38 Flashpoint 1991-04-02 0.000000 \n", "27 Pablo Honey 1993-02-22 0.342392 \n", "37 Voodoo Lounge (Remastered 2009) 1994-07-11 0.250556 \n", "36 Stripped 1995-01-13 0.000000 \n", "26 The Bends 1995-03-28 0.340483 \n", "50 Spice 1996-11-04 0.000000 \n", "25 OK Computer 1997-05-28 0.350469 \n", ".. ... ... ... \n", "24 Kid A 2000-10-01 0.341239 \n", "48 Forever 2000-11-06 0.209581 \n", "1 1 (Remastered) 2000-11-13 0.182973 \n", "22 I Might Be Wrong 2001-01-01 0.000000 \n", "23 Amnesiac 2001-03-12 0.372214 \n", "21 Hail To the Thief 2003-01-01 0.312446 \n", "20 Com Lag: 2+2=5 2004-03-24 0.262193 \n", "34 Live Licks 2004-11-01 0.000000 \n", "33 A Bigger Bang (2009 Re-Mastered) 2005-09-05 0.252222 \n", "19 In Rainbows Disk 2 2007-01-01 0.380068 \n", "18 In Rainbows 2007-12-28 0.323648 \n", "32 Shine A Light 2008-01-01 0.000000 \n", "13 The King Of Limbs 2011-02-18 0.280447 \n", "17 TKOL RMX 1234567 2011-10-10 0.000000 \n", "61 Some Girls: Live In Texas '78 2011-11-21 0.239891 \n", "60 Live At The Checkerboard Lounge 2012-07-09 0.211296 \n", "59 Live At The Checkerboard Lounge 2012-07-09 0.210982 \n", "31 Live 1965: Music From Charlie Is My Darling (L... 2012-11-06 0.000000 \n", "16 A Moon Shaped Pool 2016-05-08 0.381159 \n", "58 Totally Stripped - Paris (Live) 2016-05-20 0.292715 \n", "57 Totally Stripped - Amsterdam (Live) 2016-06-03 0.299021 \n", "56 Totally Stripped - Brixton (Live) 2016-06-06 0.281734 \n", "55 Totally Stripped (Live) 2016-06-17 0.273384 \n", "30 Totally Stripped (Live) 2016-06-17 0.000000 \n", "0 Live At The Hollywood Bowl 2016-09-09 0.000000 \n", "29 Havana Moon (Live) 2016-11-11 0.000000 \n", "28 Blue & Lonesome 2016-12-02 0.272961 \n", "54 Ladies & Gentlemen (Live) 2017-06-07 0.277306 \n", "53 Sticky Fingers Live At The Fonda Theatre 2017-09-29 0.293745 \n", "52 On Air (Deluxe) 2017-12-01 0.200974 \n", "\n", "[62 rows x 5 columns]" ] }, "execution_count": 295, "metadata": {}, "output_type": "execute_result" } ], "source": [ "albums_df = pd.DataFrame(list(albums.find({}, ['release_date', 'name', 'artist_name'])))\n", "\n", "def try_date(d):\n", " try:\n", " return datetime.strptime(d, \"%Y-%m-%d\")\n", " except ValueError:\n", " return datetime.strptime(d, \"%Y\")\n", "\n", "albums_df['release_date'] = albums_df['release_date'].apply(lambda d: try_date(d))\n", "albums_df['gloom'] = albums_df['_id'].apply(lambda i: album_glooms[i])\n", "albums_df.sort_values('release_date', inplace=True)\n", "albums_df" ] }, { "cell_type": "code", "execution_count": 296, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "ax.plot_date(albums_df['release_date'], albums_df['gloom'])\n", "\n", "fig.autofmt_xdate()\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "One thing that's noticable is the split in time between the groups, and the much shorter period the Beatles were active for." ] }, { "cell_type": "code", "execution_count": 297, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namenamerelease_dategloom
157gDXyW16byCQOgK965BRznThe BeatlesPlease Please Me (Remastered)1963-03-220.184434
143nkEsxmIX0zRNXGAexaHAnThe BeatlesWith The Beatles (Remastered)1963-11-220.151891
1271Mwd9tntFQYUk4k2DwA0DThe BeatlesA Hard Day's Night (Remastered)1964-07-100.216281
117BgGBZndAvDlKOcwe5rscZThe BeatlesBeatles For Sale (Remastered)1964-12-040.176134
1019K3IHYeVkUTjcBHGfbCOiThe BeatlesHelp! (Remastered)1965-08-060.221467
93OdI6e43crvyAHhaqpxSyzThe BeatlesRubber Soul (Remastered)1965-12-030.212529
80PYyrqs9NXtxPhf0CZkq2LThe BeatlesRevolver (Remastered)1966-08-050.235064
71PULmKbHeOqlkIwcDMNwD4The BeatlesSgt. Pepper's Lonely Hearts Club Band (Remaste...1967-06-010.226258
513LXItxKnnJcEDc5QdTc00nThe BeatlesSgt. Pepper's Lonely Hearts Club Band (Deluxe ...1967-06-010.274175
66P9yO0ukhOx3dvmhGKeYoCThe BeatlesMagical Mystery Tour (Remastered)1967-11-270.266163
503Qh833fEdVT30Pfs93ea6The BeatlesThe Beatles (Remastered)1968-11-220.245049
447bcKzmKgmMPHXNVOWpLiuThe BeatlesYellow Submarine (Remastered)1969-01-170.178472
32Pqkn9Dq2DFtdfkKAeqgMdThe BeatlesAbbey Road (Remastered)1969-09-260.287247
22pCqZLeavM2BMovJXsJEIVThe BeatlesLet It Be (Remastered)1970-05-080.219499
\n", "
" ], "text/plain": [ " _id artist_name \\\n", "15 7gDXyW16byCQOgK965BRzn The Beatles \n", "14 3nkEsxmIX0zRNXGAexaHAn The Beatles \n", "12 71Mwd9tntFQYUk4k2DwA0D The Beatles \n", "11 7BgGBZndAvDlKOcwe5rscZ The Beatles \n", "10 19K3IHYeVkUTjcBHGfbCOi The Beatles \n", "9 3OdI6e43crvyAHhaqpxSyz The Beatles \n", "8 0PYyrqs9NXtxPhf0CZkq2L The Beatles \n", "7 1PULmKbHeOqlkIwcDMNwD4 The Beatles \n", "51 3LXItxKnnJcEDc5QdTc00n The Beatles \n", "6 6P9yO0ukhOx3dvmhGKeYoC The Beatles \n", "5 03Qh833fEdVT30Pfs93ea6 The Beatles \n", "4 47bcKzmKgmMPHXNVOWpLiu The Beatles \n", "3 2Pqkn9Dq2DFtdfkKAeqgMd The Beatles \n", "2 2pCqZLeavM2BMovJXsJEIV The Beatles \n", "\n", " name release_date gloom \n", "15 Please Please Me (Remastered) 1963-03-22 0.184434 \n", "14 With The Beatles (Remastered) 1963-11-22 0.151891 \n", "12 A Hard Day's Night (Remastered) 1964-07-10 0.216281 \n", "11 Beatles For Sale (Remastered) 1964-12-04 0.176134 \n", "10 Help! (Remastered) 1965-08-06 0.221467 \n", "9 Rubber Soul (Remastered) 1965-12-03 0.212529 \n", "8 Revolver (Remastered) 1966-08-05 0.235064 \n", "7 Sgt. Pepper's Lonely Hearts Club Band (Remaste... 1967-06-01 0.226258 \n", "51 Sgt. Pepper's Lonely Hearts Club Band (Deluxe ... 1967-06-01 0.274175 \n", "6 Magical Mystery Tour (Remastered) 1967-11-27 0.266163 \n", "5 The Beatles (Remastered) 1968-11-22 0.245049 \n", "4 Yellow Submarine (Remastered) 1969-01-17 0.178472 \n", "3 Abbey Road (Remastered) 1969-09-26 0.287247 \n", "2 Let It Be (Remastered) 1970-05-08 0.219499 " ] }, "execution_count": 297, "metadata": {}, "output_type": "execute_result" } ], "source": [ "beatles_df = albums_df[ (albums_df['artist_name'] == 'The Beatles') \n", " & (albums_df['gloom'] > 0) \n", " & (albums_df['release_date'] < datetime(1971, 1, 1))]\n", "beatles_df" ] }, { "cell_type": "code", "execution_count": 298, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nu7opnGvHAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "ax.plot_date(beatles_df['release_date'].values, beatles_df['gloom'].values, linestyle='-')\n", "\n", "fig.autofmt_xdate()\n", "\n", "for a in beatles_df.itertuples():\n", " for t in tracks.find({'album.id': a[1], 'gloom': {'$exists': True}}):\n", " ax.scatter(a.release_date, t['gloom'])\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 299, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namenamerelease_dategloom
476FjXxl9VLURGuubdXUn2J3The Rolling StonesSome Girls (Deluxe Version)1978-06-090.227614
452wZgoXS06wSdu9C0ZJOvlcThe Rolling StonesEmotional Rescue (2009 Re-Mastered)1980-06-200.236002
441YvnuYGlblQ5vLnOhaZzpnThe Rolling StonesTattoo You (2009 Re-Mastered)1981-08-240.196667
42064eFGemsrDcMvgRZ0gqtwThe Rolling StonesUndercover (2009 Re-Mastered)1983-11-070.214526
411WSfNoPDPzgyKFN6OSYWUxThe Rolling StonesDirty Work (Remastered 2009)1986-03-240.253013
3925mfHGJNQkluvIqedXHSx3The Rolling StonesSteel Wheels (2009 Re-Mastered)1989-08-290.179906
3762ZT16LY1phGM0O8x5qW1zThe Rolling StonesVoodoo Lounge (Remastered 2009)1994-07-110.250556
350ZGddnvcVzHVHfE3WW1tV5The Rolling StonesBridges To Babylon (Remastered)1997-09-290.275984
334FTHynKEtuP7eppERNfjyGThe Rolling StonesA Bigger Bang (2009 Re-Mastered)2005-09-050.252222
612gCp8kyDcL93s4kVP4VMTCThe Rolling StonesSome Girls: Live In Texas '782011-11-210.239891
583wkyUMDuH56iNaSxKvukaxThe Rolling StonesTotally Stripped - Paris (Live)2016-05-200.292715
572b3y5k1DchDACjH5KMlgQvThe Rolling StonesTotally Stripped - Amsterdam (Live)2016-06-030.299021
565D7RtaChuvF0Av1xXT3acuThe Rolling StonesTotally Stripped - Brixton (Live)2016-06-060.281734
550aWIIpfY32rT1i3yO9LROlThe Rolling StonesTotally Stripped (Live)2016-06-170.273384
284g9Jfls8z2nbQxj5PiXkiyThe Rolling StonesBlue & Lonesome2016-12-020.272961
5434d9ClCaKRoQ8pMeJ9GfvtThe Rolling StonesLadies & Gentlemen (Live)2017-06-070.277306
536iCIB08bkoitQOL5y2uEsMThe Rolling StonesSticky Fingers Live At The Fonda Theatre2017-09-290.293745
527Hk1X2BCADxuR9saTIKfOWThe Rolling StonesOn Air (Deluxe)2017-12-010.200974
\n", "
" ], "text/plain": [ " _id artist_name \\\n", "47 6FjXxl9VLURGuubdXUn2J3 The Rolling Stones \n", "45 2wZgoXS06wSdu9C0ZJOvlc The Rolling Stones \n", "44 1YvnuYGlblQ5vLnOhaZzpn The Rolling Stones \n", "42 064eFGemsrDcMvgRZ0gqtw The Rolling Stones \n", "41 1WSfNoPDPzgyKFN6OSYWUx The Rolling Stones \n", "39 25mfHGJNQkluvIqedXHSx3 The Rolling Stones \n", "37 62ZT16LY1phGM0O8x5qW1z The Rolling Stones \n", "35 0ZGddnvcVzHVHfE3WW1tV5 The Rolling Stones \n", "33 4FTHynKEtuP7eppERNfjyG The Rolling Stones \n", "61 2gCp8kyDcL93s4kVP4VMTC The Rolling Stones \n", "58 3wkyUMDuH56iNaSxKvukax The Rolling Stones \n", "57 2b3y5k1DchDACjH5KMlgQv The Rolling Stones \n", "56 5D7RtaChuvF0Av1xXT3acu The Rolling Stones \n", "55 0aWIIpfY32rT1i3yO9LROl The Rolling Stones \n", "28 4g9Jfls8z2nbQxj5PiXkiy The Rolling Stones \n", "54 34d9ClCaKRoQ8pMeJ9Gfvt The Rolling Stones \n", "53 6iCIB08bkoitQOL5y2uEsM The Rolling Stones \n", "52 7Hk1X2BCADxuR9saTIKfOW The Rolling Stones \n", "\n", " name release_date gloom \n", "47 Some Girls (Deluxe Version) 1978-06-09 0.227614 \n", "45 Emotional Rescue (2009 Re-Mastered) 1980-06-20 0.236002 \n", "44 Tattoo You (2009 Re-Mastered) 1981-08-24 0.196667 \n", "42 Undercover (2009 Re-Mastered) 1983-11-07 0.214526 \n", "41 Dirty Work (Remastered 2009) 1986-03-24 0.253013 \n", "39 Steel Wheels (2009 Re-Mastered) 1989-08-29 0.179906 \n", "37 Voodoo Lounge (Remastered 2009) 1994-07-11 0.250556 \n", "35 Bridges To Babylon (Remastered) 1997-09-29 0.275984 \n", "33 A Bigger Bang (2009 Re-Mastered) 2005-09-05 0.252222 \n", "61 Some Girls: Live In Texas '78 2011-11-21 0.239891 \n", "58 Totally Stripped - Paris (Live) 2016-05-20 0.292715 \n", "57 Totally Stripped - Amsterdam (Live) 2016-06-03 0.299021 \n", "56 Totally Stripped - Brixton (Live) 2016-06-06 0.281734 \n", "55 Totally Stripped (Live) 2016-06-17 0.273384 \n", "28 Blue & Lonesome 2016-12-02 0.272961 \n", "54 Ladies & Gentlemen (Live) 2017-06-07 0.277306 \n", "53 Sticky Fingers Live At The Fonda Theatre 2017-09-29 0.293745 \n", "52 On Air (Deluxe) 2017-12-01 0.200974 " ] }, "execution_count": 299, "metadata": {}, "output_type": "execute_result" } ], "source": [ "stones_df = albums_df[(albums_df['artist_name'] == 'The Rolling Stones') & (albums_df['gloom'] > 0)]\n", "stones_df" ] }, { "cell_type": "code", "execution_count": 300, "metadata": {}, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAAX0AAADyCAYAAACh6BXoAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzsnXl4VOXZ/z/P7NlDFsjGlgBhjYAIolLFCKiIoFil1lf7\ndrG0LqjFVmrryw/baqsVcWnVttZdxA2IWEEjKoJlhyCQEBIQshHIMllnf35/TCbJJJNkksxMkuF8\nrouLzD3nnLmzzHeecz/3IqSUKCgoKCicH6j62gEFBQUFhcChiL6CgoLCeYQi+goKCgrnEYroKygo\nKJxHKKKvoKCgcB6hiL6CgoLCeYQi+goKCgrnEYroKygoKJxHKKKvoKCgcB6hiL6CgoLCeYTGm4OE\nEFcDawA18E8p5eMdHLcYeA+4SEq5RwgxAjgK5DUd8l8p5dLOXisuLk6OGDHCK+cVFBQUFJzs3bv3\nnJQyvqvjuhR9IYQaeB6YAxQBu4UQG6WUR9ocFwEsA3a2uUSBlHKyt46PGDGCPXv2eHu4goKCggIg\nhPjOm+O8Ce9MB45LKQullBZgLbDQw3GPAn8GTF57qaCgoKAQULwR/WTgdKvHRU22ZoQQU4GhUspN\nHs4fKYTYL4T4Uggxq+euKigoKCj0Fq9i+p0hhFABTwE/8vB0KTBMSlkhhLgQWC+EmCClrGlzjTuB\nOwGGDRvWW5cUFBQUFDrAm5V+MTC01eOUJpuLCGAi8IUQ4iRwMbBRCDFNSmmWUlYASCn3AgXAmLYv\nIKV8SUo5TUo5LT6+y30IBQUFBYUe4o3o7wZGCyFGCiF0wBJgo+tJKaVRShknpRwhpRwB/Be4vil7\nJ75pIxghRCowGij0+XehoKCgoOAVXYZ3pJQ2IcTdwGacKZsvSykPCyFWAXuklBs7Of17wCohhBVw\nAEullJW+cLwz3i+r5LHCUorNVpL1WlakJrI4IcbfL6ugoKDQ7xH9bVzitGnTZG9SNt8vq2R53mka\nHS3fV4hK8GT6UEX4FRQUghYhxF4p5bSujgu6itzHCkvdBB+g0SF5rLC0jzxSUFBQ6D8EnegXm63d\nsisoKCicT/Q6ZbO/kazXUuRB4JP12j7wRsFflJZtoLDgSUzmUgz6RFLTlpOY4KlmUEFBoTVBJ/or\nUhM9xvRXpCb67DVycnLIzs7GaDQSFRVFZmYmGRkZPru+QueUlm0gN/dhHI5GAEzmEnJzHwZQhF9B\noQuCLryzOCGGJ9OHkqLXIoAUvdanm7g5OTlkZWVhNBoBMBqNZGVlkZOT45PrK3RNYcGTzYLvwuFo\npLDgyT7ySEFh4BB0K31wCr+/MnWys7OxWt3DR1arlezsbGW1HyBMZs+b8h3ZFRT6A0e3bWXb2teo\nrThHRGwcs5bczrhZswPuR9Ct9P2Na4XvrV3B9xj0nkN1HdkVFAKFMSuL/CszOTpuPPlXZmLMygKc\ngr/lpeeoPXcWpCTZcpjkT5YgV0bD6omQsy5gPgblSt+fREVFeRT4qKioPvDm/CQ1bblbTB9ApQoh\nNW15H3qlcL5jzMqi9PePIE3ORsO2khJKf/8IANs++QCbxQzA2Mhy5ibmo1U5mk48DVn3Or/OuNnv\nfior/W6SmZmJVuueCaTVasnMzOwjj84/EhMWMnbsHzHokwCBQZ/E2LF/VDZxFfqU8tVPNwu+C2ky\nUb76aWorzjXbLos/2SL4LqyNkL0qEG4qK/3u4orbK9k7fUtiwkJF5BX6FdbSEkQH9ohxFztDO0Ck\n1uz5AsYi/znXCkX0e0BGRoYi8goKCm5URaqJMdo92mctuZ0tLz2HzWKmxqonSudB+KNSAuClEt5R\nUOiYnHXOTbY+2GxTGHi8cbnE1GoZvW284Be/VLP0F7DszGPEL7qMiLh4vj47AqtUu5+sDYHMRwLi\npyL6CgqeyFnn3FwzngZky2abIvwKHVAwPZkXrxWcjYSvxgteuFZFRZQAISitL2V141sk/+om5v9j\nF9rFL0DUUEA4/1/wTEA2cSEIu2wqKPiE1RNZXzGUJ2y3UEIsSVTwoOYdFsWehvu/7WvvFPohmwo3\nsXLHSkx252buqLMXMuPUdYRbBlGnq2LnsI+oH1HClpu2+OX1fdplUwhxtRAiTwhxXAjxUCfHLRZC\nSCHEtFa2FU3n5Qkh5nnnvoJC37K+YhgrbD+jmHgkKoqJZ4XtZ6yvUMZ5Knhmfup8Vl6yksSwREad\nvZDLC5cQYYlBIIiwxHB54RLCTib1tZtdi37T5KvngWuA8cAPhBDjPRwXASwDdrayjcc5aWsCcDXw\nN9ckLQWF/swTjltpRO9ma0TPE45b+8gjhYHA/NT5bLlpC5cULUTr0Lk9p3XouKSo7zPOvMnemQ4c\nl1IWAggh1gILgSNtjnsU+DPwYCvbQmCtlNIMnBBCHG+63je9ddxfrN9fzBOb8yipbiQpOoQH56Wz\naEpyX7ul0AZ/l7SXOKK7ZQ8G+kubgIFKa+34lSnS4zGhHdgDiTfhnWTgdKvHRU22ZoQQU4GhUspN\n3T23P7F+fzErPjhEcXUjEiiubmTFB4dYv7+4y3MVAkfbkvbac2fZ8tJzHN221WevkRQd2i37QCcQ\nP9Ngpq121AjPe6XhMYbAOuaBXmfvCCFUwFPAr3pxjTuFEHuEEHvOnj3bW5d6zBOb82i0uufZNlrt\nPLE5r488UvDEtrWvNZe0u7BZzGxb+5rPXuPBeemEaN0jkSFaNQ/OS/fZa/QnAvEzDWbaasdXBhtW\n3IVfo1Mxc2FaoF1rhzfhnWJgaKvHKU02FxHAROALIQRAArBRCHG9F+cCIKV8CXgJnNk73fDfp5RU\nN3bLrtA3tC5p98beE1whvfMl1BeIn2kw01YjcvXOD4DvmTRESRXhMXpmLkxjzIyEvnDPDW9Efzcw\nWggxEqdgLwGad7OklEYgzvVYCPEFsFxKuUcI0Qi8JYR4CkgCRgO7fOe+b0mKDqHYg8AnRYf0gTcK\nHRERG9dc0t7W7ksWTUkOWpFvS6B+psFKuMpKrcO9J1eu3k5xiIlDf1rUR155pkvRl1LahBB3A5sB\nNfCylPKwEGIVsEdKubGTcw8LIdbh3PS1AXdJKdvXKfcTHpyXzooPDrndpgXzLf1AZdaS28l663Ua\nBw1BanUIq4WQqjPMWvI/fe3agKV1mwAXGp2eWUtu70OvBg6TVafY4RjBtIR93Dj6I2INVVSaBvFt\n4XTAKfrHdpbxzYYC6irNfbry96r3jpTyY+DjNjaPNcNSyivaPP4j8Mce+hdQzrdb+oGKNSoWc+II\npMPZqVDq9JgTR2CNiu1jzwYuriwdJXunZ0yNtTNS8wkzx36OTu0cshQbUsWscdmUlm2g9rsZbH0z\nF5vF+TdbV2lm65u5AAEXfqUiV2HAsXr16g5nGtx///194JHC+U5OTg5FRbehN9S3e86gT+L4psep\nq2zfZC08Rs8df7rUJz74tCJXQaE/oUwvU+hvZGRkoDc0eHzOZC71KPhAh3Z/ooi+woCjoyllyvQy\nhb6kszGe4TF6j891ZPcniugrDDiU6WUK/ZHUtOXsLJvJr79ayU+2rOHXX61kZ9lMUtOWM3NhGhqd\nu9z2Vd6+MkRFYcARqOllOTk5yoQ0Ba9Z//Uo/p1zC9amtXSFKYbXjixh/LgpLGrarO0P2TvKRq6C\nggdycnLIysrCarU227RaLQsWLFCEX6Edx3aWcdP7+6hRtdfT5OgQtj90pd99UDZyFRR6QXZ2tpvg\nA1itVrKzs/vII/+zqXATc9+bS8arGcx9by6bCtu20lLoiG82FHTYb6e/VfQr4R0FBQ+cbxlCbQeA\nlNaXsnLHSsDZLlihc+oqzQyOEpTTXviHCM9r674KHwblSt+YlUX+lZkcHTee/CszMWZl9bVLCgOM\n8y1DaM2+Nc2C78JkN7Fm35o+8mhgER6j5+foaJuLowfulLp2x7vCh65FhNFoJCsri5ycHL/7GnSi\nb8zKovT3j2ArKQEpsZWUUPr7RxThV+gW51uGUFl9WbfsCu7MXJjGLKnjNxgYgkAAQxD8BgPXREe0\nO74vw4dBF94pX/000uS+YpEmE+WrnyZqwYIuz1cyNhQgcBlC/YWEsARK60s92hW6ZsyMBHLf2cAc\nVRpzNS0iL20WNPGV7Y7vy/Bh0Im+rbT9H25n9ta0zdhw3XIBQftmH6gYs7IoX/00ttJSNImJDL7/\nPq8+1LtDRkbGefN7XzZ1mVtMH8CgNrBs6rI+9GrgYMzKQn78NKbk6egn3IAIiUE2VmI+/CGmfUXE\n/+Rqt+MjQ8Kpaaxrd51AhA+DTvQ1iYnO0I4He1d0dst1vrz5BwKuEJ7rjs4VwgN8LvznC67N2jX7\n1lBWX0ZCWALLpi4bEJu4pWUbKCx4EpO5FIM+kdS05SQmBHYWbfnqpwGwFe/CVtyme7xzzkgz9fvL\nubB+BF+JI9iFo9muUWsCEj4MOtEffP99boIAIAwGBt9/X5fnnm8ZGwOV3obwFDwzP3X+gBD51pSW\nbSA392EcDmdapMlcQm7uwwABFX5XJKE4Opy8xBhMWg0Gq4300kqGh7rPxa3ZfJI0yxCkysEeTSF1\nwkS4NDBdk95/sneEEFcLIfKEEMeFEA95eH6pEOKQEOKAEOJrIcT4JvsIIURjk/2AEOIFX38DbYla\nsIDER1ehSUoCIdAkJZH46CqvxGAgZmycj7nVvQnhKQQXhQVPNgu+C4ejkcKCJwPqhyYxkeLocA4N\njcek04IQNIQPRosOS0kJ2y6dxaevrwXAXu1ssjbKkcgSy6X81JzJEsulpNYFZmBNlyt9IYQaeB6Y\ng3Ow+W4hxEYp5ZFWh70lpXyh6fjrcc7MdQWxCqSUk33rdudELVjQoxVfZmamxyrM/pqxcb7mVvcm\nhKcQXJjMnj/oO7L7i8H338en/34eh8q5jnboBnHVgRwMVgsAcRXnMD3xGJ8C6SFJqBpFu2s4QgLT\nHcGblf504LiUslBKaQHWAm73TVLKmlYPw8BDhcIAICMjgwULFjSv7KOiovp12f35mls9+P77EAaD\nm83bEJ5CcNFZZ8tAErVgAY3aljX09PzCZsFv9sliwfDC8xys/BKbw33v0OawcrDyy4D46k1MPxk4\n3epxETCj7UFCiLuABwAd0LrRxEghxH6gBvidlHKbh3PvBO4EGDZsmNfO+4OBlLFxvuZWu+7i/J29\no9D/SU1b7hbTB1CpQkhNWx5wXyIiw1DHl5A0o5y437RfT3920SX8Y+ESbn93DaawGjIGXU6oJpIG\nWw05VV9yqiE3IH76bCNXSvk88LwQ4lbgd8AdQCkwTEpZIYS4EFgvhJjQ5s4AKeVLwEvgbLjmK5+C\nnfM5t7qnITyF4MK1WdvX2TvkrOPCsfs5N8mBRiOpiBlCfGVV89OfXXQJT/7wTsx6PTXhUZyqO8qp\n+qNul4iIiw+Iq96IfjEwtNXjlCZbR6wF/g4gpTQD5qav9wohCoAxwIBuo3l029Z+MUtUya1WUHAK\nf8BFvi3Zq6gcb0Wjca7wC64fRMRb9RgszhDPPxcuwax3Nmn4asYcrv5yA/kjxrFtxhxqwqOJrDdy\nT0Rgkim9eZXdwGghxEicYr8EuLX1AUKI0VLK/KaH84H8Jns8UCmltAshUoHRQKGvnO8Ljm7bypaX\nnsNmce7A1547y5aXngMIuPAP5NxqBYWgwliE0MU2Pxw2PZcDjCVtYxWxlVWUx7Rk5uSOnswZTTxV\nQxOh6UOiJjyap4QgqaySxQkxfnW1S9GXUtqEEHcDmwE18LKU8rAQYhWwR0q5EbhbCHEVYAWqcIZ2\nAL4HrBJCWAEHsFRK2b4meQCxbe1rzYLvwmYxs23ta32y2h+IudUKCkFHVApVdhMxmpbo9LDpuVin\nwxGbINmgo8js3LxVldRTlTCkWfBdNDokjxWW9r3oA0gpPwY+bmN7pNXXHuMJUsr3gfd742B/o7bi\nXLfsCgoK5wGZj7D16O+5yqYhJMKGNsyGtV5DY62GryMiWZGRyPK80zQ6JJr8WizfC/V4mWKz1aPd\nlwRdRa6/iYiNo/bcWY/2YOXYzrJ+MeZNQaG/sik8jNDaBEYZChh9uB6D2YFJryJ/aBhnLBc7V++n\ndvJYlYazJjuY7BDSXn6T9VoPV/ctQdda2d/MWnI7Gp1712yNTs+sJbf3kUf+5djOMra+mUtdpTOk\nVVdpZuubuRzbGdxpoQoDiJx1sHoirIx2/p+zLuAurNm3hh+qTzKhsJYQswMBhJgdTCis5eK6zyBn\nHYs//V/2fHMTKZwlJScPTZs8fo3Vwh2WKs8v4EOUlX43ccXt+0P2TiD4ZkMBNovDzWazOPhmQ4Gy\n2lfoe3LWQda9YG3K0zeedj4GyLg5YG6U1ZcxtqwGtftbBbUDxpbWQPYqNukEa4YkUVH/GbfsslJU\nm9aSvVNXzaydn6KvLoUrLvOrr4ro94Bxs2YHrci3xbXC99auoBBQsle1CL4La6PTHkDRTwhLwGD+\nzuNzBrODTZpKVsbFYFKp0EYfJMI2nPHHcxh/3H1SVq1o357B1yjhnb6iH9ySekN4TNsBcJ3bFQYu\n6/cXc+njnzPyoU1c+vjnrN/fWTlOP8FY1D27n1g2dRlVaoPH56o0IayJdQq+i3qDzeOxgdgbDErR\nf/Wjj1j109t48pbrWPXT23j1o4/62iV3XLekxtOAbLkl7YfCP3NhGhqd+5+JRqdi5sK0PvJIwR+s\n31/Mig8OUVzdiASKqxtZ8cGh/i/8USnds/uJ+anzeSx2CBbcV+oWBI/FDKZM7W7fm16FTeUeCwrU\n3mDQif6rH31E6dv/Iqy2GgGE1VZT+va/+pfwd3ZL2s8YMyOB2T8c27yyD4/RM/uHY5V4fpDxxOY8\nGq12N1uj1c4Tm/P6yCMvyXwEtCHuNm2I0x5gPgmTrLWmYnSEIyUYHeGstabySRgkhLk3gDuR3MD2\nSRXUGWxIJPUhduIXXRaQsHHQxfS/W7+WMJt7rqvWZuW79Wvhuuv6yKs29JNbUm8ZMyNBEfkgp6S6\nsVv2foMrbp+9yvn+iUpxCn4A4/ngnIZ1zdFUvtNMYrWqSVYFqB02rsk/zOU//mm7liknkhs4kdzQ\n/DhR/odbud/vvgad6IfWVnfL3idEpTSFdjzYFRT6gKToEIo9CHxSdIiHo/sZGTcHXOTbUrP5JLGO\ndKz1RsLKixE2C1Kjwzw4mVjdGLeWKZ6aJELguuMGXXinISK6W/Y+oR/dkiooADw4L50QrdrNFqJV\n8+C89D7yaGBhrzZhtTSgrquhYXg6dWMvpGF4Ouq6GqzmesAZ999y0xYSwzz3+g9Ud9ygE/3hi5Zg\n1bhXtVk1WoYvWtJHHnkg42ZY8AxEDQWE8/8Fz/T5akXh/GXRlGQeu3ESydEhCCA5OoTHbpzEoinJ\nfe3agMAWUo26sR5z4jCkTg9CIHV6zInDUDfWux27LG4GBod7B3mDQ7Isrt2YEr8QdOGdO667jldx\nxvZDa6tpiIhm+KIl3NFf4vku+sEtqYJCaxZNSVZEvoeUp63DYh4KKve7JVRqLLHuK/j5+z8EWwVr\nBkVTplGTYLOzrKqa+dUfwhWP+t3XoBN9cAp/v9m0VVBQCHqsI79D5ntOY5ZanbvBWMR8JPPrG9oc\nGZhNc6/CO0KIq4UQeUKI40KIhzw8v1QIcUgIcUAI8bUQYnyr51Y0nZcnhJjnS+cVFBQU+gMnQq7C\nINuKuJNQ3OdYE5VCabyOvwyfw4U8xwjTm1xsfYb1usAsVLtc6Qsh1MDzwByc83F3CyE2SimPtDrs\nLSnlC03HXw88BVzdJP5LgAlAEvCZEGKMlNI9IVihx6zfX8wTm/MoqW4kKTqEB+elK7foCgoB5rXC\n7UyLtBFSewl24ZTVVNsQptvSCMNA6eO7iJw3grApgym9dAH/yi3gtdwfYHE47wLK7HE8VH8z7C/2\n+/vXm/DOdOC4lLIQQAixFlgINIt+m5m3YYBrl2IhsLZpbOIJIcTxput94wPfz3tcVZSuohpXFSUQ\n9ML/flkljxWWUmy2kqzXsiI10e/DJ4IdpYV2zymrLyMrXpIkYsmrSQezZDCCpaiZi8Bebab6A+dw\nwdyGraw/ehcW6R72MdnVPLE5z+/vXW/CO8lA66TyoiabG0KIu5pm4P4FuLc75yr0jAFbRdlL3i+r\nZHneaYrMViRQZLayPO8075cN6KFsfYrSQrt3JIQlIIw/IrdiDJida95yJH/GxBacLZSl1UHN5pPo\nvqmgwjHI43UCUQzns5RNKeXzUso04DfA77pzrhDiTiHEHiHEnrNn2w8oCUbeL6tk2o7DJG49wLQd\nh3skWAO2irKXPFZYSmOblDfXqDmFntFZC22Frlk2dRk1FeMQbVorm4EXaelIa682E7FRQ7jFPY3T\nRSCK4bwR/WJgaKvHKU22jlgLLOrOuVLKl6SU06SU0+Lj471wqW8pLdvA9u2zyP58FNu3z6K0bEO3\nzvfVSjU6Qtcte7DQ0Ug5X4+a88UH80BBaaHdO+anzkeaHR6fK6dlgaKO1rMtdAqNmvYdOdV2W0CK\n4bwR/d3AaCHESCGEDufG7MbWBwghRrd6OB/Ib/p6I7BECKEXQowERgO7eu9231FatoHc3IcxmUsA\niclcQm7uw90Sfl+tVK2jI5Eq9+59UiWwjo7s1nUGGh2NlPPlqLnzLYSktNDuHev3F9NRJ/zBrmdU\nIC12Xpk4H5u6/XZqmMMSkL24LkVfSmkD7gY2A0eBdVLKw0KIVU2ZOgB3CyEOCyEOAA8AdzSdexhY\nh3PT9xPgroGeuVNY8CQOh3v4xOFopLDgSa+v4auVakW8HuuEKBwGNRJwGNRYJ0RRER/cb9QVqYmE\ntPmwC1EJVqR6Lm/vCedbCGnK5HjalBWhbrIrdI1zH82T7EvuRIcIUSOlxNFg45whyuM1atu2ZvET\nXhVnSSk/Bj5uY3uk1dfLOjn3j8Afe+pgf8Nk9vym78juiWS9liIPAt/dlWqyXktRUhiWpDA3e0oA\nhiv3Ja4sHX9m7xSbLXh6EzvtwUd8YTUXhKg4anLQKCFEwDiDivjCftSosB/jqVmdi39PuJ85hc+j\nks6/p8FCxRlku+OSokP95l9rgrIi158Y9IlNoZ32dm9ZkZrIrz7PxXGsBmGyIw1qVGMiWXHl2G75\nsiI1keV5p91WpL5e8fZXFifE+DVFM5YqztH++rH4f3B1X2CrNjNUr2aoXt3OrtAxDRYbf9h0tMPn\nVZpqJlaFIxpoXkP8HD2PYnKT/UA2twu6hmv+JjVtOSqV+22YShVCatpyr6+hLm1Ee8SIymRHACqT\nHe0RI+rS7mXdLE6I4cn0oaTotQicK/wn04cq+eo+4Gb5GjrpXkmpkyZulq/1kUf+xdRNe3/i2M4y\nXv3tdp5f+jmv/nZ7wNJMDxUZue6Zr3l71ylSRBU6e9u7QMkky2F++R402FpKmcahbhF8KQPe3E5Z\n6bfh6LatbFv7GrUV54iIjWPWktvdptkkJiwEnLF9k7kUgz6R1LTlzXZveGJzHlab+06/1eboUWGG\nv1e85yuZ+gIw/5118oecI444znEzb5KpL+xr1/zC4Xobk0PVaFoN5rZJyeEGO6M7Oa+vcdUXuNJN\nXfUFgN8Ky+wOyYtfFfDUlmPEhet58yczOPXUI2w7G8Wm1Euh+WcoOCxm8sSsBG6oymaqegEalZZt\nOOfj6iRMtpay7qGf+cXPjlBEvxVHt21ly0vPYbM4b2lrz51ly0vPAbQT/u6IfFvO1/z6gURq2nK+\n/Pxd9MfOYDBZ0Buq0Iyxk3ql93d0AwljhI4DtRbGG9SEqKDRAUdMdoz9PP23s/oCf4h+cXUjD7xz\ngJ0nKpk/KZE/3jCR6FAd0TmHeGrqna0Ev8kXoWaffSjXjH+bF48mkh0+nnIEGiRaacEea/S5j10R\nlKLf034029a+1iz4LmwWM9vWvubT2ZUDekrRecLO0mm8dkSNyeZ8E1eYYnjtyBLGj5vCoiDsTDBz\nYRpb38yluNbWbNPoVMxe6LlzZH8hkPUFGw+W8PCHh3A4JE9+/wIWT01GNIm8qKigPMRzlW09OrY3\nXMWWyNFYmzZzbQhsQkdDSOCH1ARdTN/Vj6a4uhFJSz+a9fs7qydzUnvOczVwR/aeokwp6v88sTmv\nWfBdmGwiaFtcjJmRwOip1Vhq/4mp6ikstf9k9NTqft97JxD1BbUmKw+8c4B7397PqMHhfLxsFjdd\nmNIs+ACaxERCZPuMHBcfV16MVba9axIUVgZ+3R10K/3O+tF0tdpvDJWENLRP02sM7fiX2RNcfvii\nO2b9/nJqNp/EXm1GHa1v7uSn0HP2narqMAWvuLqRO17exbjESMYlRjA2IZLU+DC06oG9fjq6bSuH\nsl/HYXOukB22Gg5lv05iWpRP73J9jesOpXWIR6NTMdNHdyh7TlZy3zsHKKlu5L6rRnP37FFoPPyu\nB99/H2zr6G9AeEjQdGK2OXh+6ecBbXAXdKLfm3j57tEVXHIoBo2j5ZdnUznYPdr3VZi+mFJUv7+c\n6g/ykVbnH3zrTn6K8HcPKSXbj1fwty+Os6OgAnDg6UZYqCyU15rZUVCI1e58K+vUKtIGhzMuMYJx\nCZGMbfowiI8YOEVygQpt+poxMxI4dfoUuV9Ugk0LGitp34vptXha7Q6eyc7n+a3HSR4UwrtLL+HC\n4Z7DNwAl0eE0ino8F2h1jLrp0yAQG9Augk70exMvbxwTyXYquDBvEGEmNfUGO3vTqzCN8VxB19fU\nbD5JdezXnBv9PjZDBRpTLHH5i1Ft1iqi7yUOh+TTo2f429bjHCwyMjhCz8PXjuPJfY9iPnM9tL4l\nFxb0CR/wn3tfx2p3UHi2nqOlNRwtqyG3tJbtx8/xwb6WMGJcuL7pbsD5ITAuMZK0wWHoNW1rX/ue\n2opz3bL3F3JyctiZ9ynWuJZix515WgbnGMjIyOjRNU+eq2fZOwc4eLqaxVNTWHn9eCIMnRc8bn31\n3wyKvZ4qvN+XExLCWu1B+3MDujVBJ/oPzkvnN+8dxGxvuaHSq4VX8fJlU5ex0rSS95Jb3rgGtYGV\nUzssOO6L66w/AAAgAElEQVRTKg1bOTPhFaTamR9sC6ngzIRX4DAkMr1vnevn2OwOsnJK+NvWAvLL\n6xgaE8Ifb5jI4qkpGLRq3i0v5jvVB1jK5yFt0QhNNbrBmxmWdAYArVpFekIE6QkRLGrVLbyy3kJu\naQ1Hy2rJLa0ht6yWV7/5DktTiq5GJUiLD2dsYgTjEiMZm+D8f3CE3i1GHGgiYuM87l1FxMb1gTfe\nk52djdXqXt1utVrJzs7utuhLKVm35zT/L+sIGpXg+VunMj/Du0LHA44YTAKQsl0GT2vUQuCQkgi7\nIFRKbG2ODUSDu6AT/fEWNfMatHyhsVKjkkQ6BFeYtYy3dL26mp86H4A1+9ZQVl9GQlgCy6Yua7b3\nN86lf9As+C6k2sK59A9wdrj2ETnrIHsVGIsgKgUyHxmwQ91NVjvv7S3ixa8KOF3ZyJgh4axZMpn5\nkxLdYrXLpi7jQfEx5nEJONSxqOwGQmoiWTZlSafXjwnTccmoOC4Z1SKWNruDkxX1HC2tJbeshqOl\ntew+UcmGAy2V3YNCtc13A2ObwkSjh4Rj0AbmrmDWktvd0pUBNDo9s5bcHpDX7ylGo5H8+GR2pk6g\nTh9CuLmRGYWHGX2268SN1lTVW1jxwSE+OVzGzNRY/nrzBd3KpvsmZiaNGDoV/BCturkI69Xfbud9\n1QlKNZL0q1dia4ihPOcGZP3l3fK7JwSd6H+zoYD0RjXpbdpHeXvbND91fr8V+bbY9BXdsveInHWQ\ndS9Ym0JmxtPOxzCghL/ObOOtnd/xj20nOFtr5oKh0Txy3QQyxw5GpWr/RjWFzqR2UAIO4fw7cmji\nqB30Y0yhI7v92hq1ilGDIxg1OIIFFyQ1240NVnLLnHcDR5vuDt7a9R2mpj0alYCRcWFNm8bOu4Kx\niZEkRRl8flfgitt3VpjYHykaPpqvNMMQO2vQm6qwGNR8lTaWkFDv+9h8nX+OX717gMp6CyuuGcvP\nZqV6/JvojFp1WKfPJ7dJ1si4toAte49zujIdIUAbVkniRa8TF5oCXNqt1+4uQSf651NfcF/0AeqS\n7FUtgu/C2ui0DwDRr6q38MqOk7yy4yTGRiuXjoplzS2TmZkW26lwrjp6AqtwXzhYhZpVR0/4rAI6\nKlTLjNRYZqTGNtvsDsmpygaOltY0h4kOFlXzUU5LQ79Ig4axiZGMa/oQGJcYyZgh4YTqevd2PqI3\n8dL1t1KsjSXZWkGs3sS4Xl3R/3ytH8HMs5+x+KIsYg1VVJgG8f7xBXwdf1WX55ptdp74JI9/fn2C\ntPgw/nXHRUxM7tn+3eBQPVWN9VhpH/sfFKpl+0NXutkaxD/QaS7F6mj5nak0FhrEPwD/3l0FneiH\nx+g9Cnww9gVPTVvO0SMrkK0m8wj03eoD1CXGou7Z+wlnakz8c1shb+48RYPFzpzxQ/jlFWlMGdZx\nBobb+VLlMRHjjPRvaqZaJRgZF8bIuDCundTy4V1rspJXVuu2V/De3iLqLc70ZCFgRGxYq01j515B\ncnSIV6vW93f9h+U1g2jUOYd7FOniWV5jgl3/YfH0a/zzzfqAjKpsfjT+bfRqZ1w/LqSKH41/m1eO\nCTpbMR87U8u9b+8nt6yW/7l4OL+9dhwhup6H0p6fUsiJnR/xWsPPucRkIFIKaoRke4iVn90yod3x\nJnMpWpUVq0Pbzu5vvBJ9IcTVwBqcLbb/KaV8vM3zDwA/BWzAWeDHUsrvmp6zA4eaDj0lpbweP+Lv\nvN3+RO13M/jP1/eQbY+k0hxFjN5IprqGlLAZJPoqASAqxRnS8WTvh5yqaOCFrwp4b08Rdim5/oIk\nll6eRnpCRLeuE1lXTU1E+w+IyLq+aTUcYdAybUQM00a03GU4HJKiqsbm7KGjpTUcLa3hk8NluOqE\nwvUa0hMimmsKxiVGkJ4QSbje/a3/WJUG8zk7uvyy5s6v5tERPGbXsDiQ32g3WTxiY7Pgu9CrrSwe\nsRF4pN3xUkpe3XGSx/6TS7hew7/umEbmuCG99uOigmeJso7gbIMWhHNhECUF19arPO4nGvSJTaKv\naWf3N12KvhBCDTwPzME52Hy3EGKjlPJIq8P2A9OklA1CiF/gHI5+S9NzjVLKyT72u0PGzEgg+3QF\nL+35DqOURAnB0mnD+31lYU944cMjbJTDcBWOVpqj+VBGY//wCE/56vvNfMQ9pg+gDXHa+5C2rTZu\nu3gYuWW1ZB0sQaNS8f1pKfz8e2kMi+1Zj/I5R/7LhqmZ2LQtKZsaq4U5R/4L1/ePOLdKJRgWG8qw\n2FDmTWj5fdebbRw7U9u8V5BbWsuGAyW8YTrVfMzQmJCmmgJnmKisSI+2wIhoatMtTHa0h42Uju/f\nU9hiDZ5bXXuyl9ea+PV7OXyRd5bZ6fH85aYLfFdLYSziq6r/A3Wb8I7Q8tXr+xkz4xpKyzY0N2rU\nqKPQqh04pBq7Q4Va5eh2t96e4s1KfzpwXEpZCCCEWAssxDkNCwAp5dZWx/8XuM2XTnaH9fuLWbPv\nBCYECDAiWbPvBIlp0QFrXRooPrObsLVZRNiE0+4zXHH7fpS942q14aq8Lq5u5M+f5KFVC346K5Wf\nXDaSIZHtZ5B2h7svvRjrZx/xxYWzqQmPJrKumiv2buXuq/qH4HdGmF7DlGGD3EJZUkpKjCaOltQ4\nM4iawkSfHT2DQ3oWAuGQ6PKM5JbVkBwd0mWuel8g1UMQjjMe7a357MgZfv1+DvVmG48unMBtFw/3\n7WZ4VArmUs97PWarrnnMqmvqnvabGiKP2WAwxC0LQRdpI/yXN5F4Rc8bOXqLN6KfDLS+vy8CZnRy\n/E+A/7R6bBBC7MEZ+nlcSrm+2152gz+v34/J0aZnikPw5/X7g070a9Sei7s7sveYjJv71aatp1Yb\n4CyG+u21vtl6HDdrNvcD0wZYNktHCCFIjg4hOTqEq8a3CKLJaufYmVquf267x/OkFa5+ehsAEQYN\nydEhpAwKIanpWslNX6dEhxAXru921ktvmTj2Nxw+sgLRal9LomfiWGfKcqPFzh82HeHNnacYnxjJ\nmiWTGT2ke6E+r8h8BP3BSsyG2HZP6c2VFBY80yz4IbtURL2uJnS4U/StKi0hVVZMf/kAY/SFRC1Y\n4Hv/WuHTjVwhxG3ANKB1sulwKWWxECIV+FwIcUhKWdDmvDuBOwGGDRvWKx/KTHjcgCsbCNMgusEz\n2fkdPjdY52PR72d01FKjzOjbX/K4WbMHrMh7i0GrJiMlmuQOKtnjw/U8smA8JdWNFFc3UlLdSFFV\nIztPVFJrsrkdq1OrSIw2kBzt/qHg+rBJjDb4vBq5s/kWh4qMLHtnPyfO1XPn91L51dwx/quGzriZ\nlKKfcmLkYhzqlpCRym4mpWiz2wZtxEY1KrtAZ3f+/CxqDVhBWq2Ur366X4h+MTC01eOUJpsbQoir\ngIeBy6WUzR+7Usripv8LhRBfAFMAN9GXUr4EvAQwbdq0XilWfGM15aHtN+DiG4Nj1qeUkqc+Pcaz\nnx9nmqaQQ9ahmEXLbbdKOlihXwdc13dO+pEyowm1SmBzeJoxqrSm7ikdVbI/PH+cW21Ba2pMVueH\nQVXTh0Grr7fln6W81kzbxpPxEfp2HwbNHxKDQogK6X4Iqe18C7tD8vcvCvjrlrzmISeti+X8wftl\nlRhT7IzOX8vJEddh1segN1cy4uRHnBqhIr1VerW6qZWXzuHcgLaoWr5nW2n/yN7ZDYwWQozEKfZL\ngFtbHyCEmAK8CFwtpSxvZR8ENEgpzUKIOJw5VH/xlfOe+HHJDlaPmINZ07IBp7dZ+HHJDvpwq8En\nSCl5/JNcXvyykFumDeVPh24ji4t5wnYLJcQSSQNGEU5JY9+V8/uT3LIa/vffu1EJ56rSYm/J0FJa\nU/eOVHUFl2hOsMueSD06wrAwXVNKqjoF8BwWjTRoiUxwVhJ7wmJzUGY0UVTdQEm1ieKqRoqbvj5S\nUsOnR840t6dwEaHXNH8AtP4wSI42kBwdyuCI9iGk1pv6gyP1hOs0FJyrdxty4m8eKyzl+pQxwDEm\n5zxOaEMDDaGh5GRkUJQyhmvSFjXH9GsjNUTW2JtX+lZ1iwxrEvtB9o6U0iaEuBvYjDNl82Up5WEh\nxCpgj5RyI/AEEA6827Q54krNHAe8KIRwtSx8vE3Wj8/5wR3X4Pjbe7wy+irOhgwivrGKH+V/xg9+\neZNX5/d0AIu/kVLy6EdHeXn7CW67eBirrp+I6nQyi4w7WKTZ0XQMLLPexZO275ORf5ZZo+P72Gvf\nsf34OZa+vpcQnZoP77qU/DN1/fL3NFDJzs5muDAy3HC2nb2njct0GlVzdpEnHA5JRb2F4lZ3CMVN\n4aOS6kb2fleFsdE9HVOrFiREGZruEEKpM1n4PO9sc8fTMzVmzmDmB9OH8qcbJgWsn1Gx2Upk/QhO\nDbNyasTwVt+kipi6kSQmLGTvySrMVc/z7mWSK/4b19xu2aJyyrBJraXyhjv8Pp7Sq5i+lPJj4OM2\ntkdafe2x/E1KuQOY1BsHu0vUggX8EJiz+mlspaVoEhMZfP99XsXJPGWFrPjAWWLQl4LicEj+b+Nh\nXv/vd/zvpSN45Lrxzj/mNumUQsDjoW+Qq57JvW/v56N7Z5EcBCGP9/cW8Zv3c0iND+Pf/zud5OgQ\niv6bw9WNu7DrTagbDYSc0IIi+j3GaPQ8tq8juy9QqQTxEXriI/RMHhrt8Zg6s605hFTUtKfg+oDY\nUXCO0g72cb46di6gDeyS9Vqmk8h/a6Au/CQOtRmVXU943QguEgms31/Mx38r4tZDGr5eVscX2tsY\nc9b5AWtWazkTEs0r468hvz6FTD/7GnQVueAU/p5shvRmAIu/cDgkD68/xNu7TnPn91JZcc3Ylj9m\nD+mUoZmP8ELibK5/bju/fGMv65bO7JetfL1BSsmznx/nqU+PcUlaLH+/7UKiQrRs/mAb3xzcCqJp\njgAm52Ng3o2zfPb6rfOqW28QBiNRUVEeBT4qqm/biofrNYwZEsGYDjJuRj60yeOAkkDPm16Rmogu\nqopRpVUUnMnB4ajlWPgkdsWE8qy6ntl/fZl79r+LwW5FZYnBJKLJGezce3zwe3c3X0cEwO+gFP3u\nUGe2sedkJf8trOxwWlJfDSy3OyS/fi+H9/cVcdfsNJbPTW+/evGQTpkKPPn9C1j6xl7+X9YR/nRD\nQG+2fILV7uB3H37LO3tOc+OUZB5fnIFO46x03HVwe7PgNyMc7Dq43Wei3zav2mQuITf3YYCgFP7M\nzEyysrLc2hRrtVoyM/297uwd4SortY72m7/hKquHo/3H4oQY3k8qhtOnuDbph3ytMfCFaMDc1Pjx\n9sMfcyY5kZwLMhhaaeKIphppa59wEohkhKAU/c7i8nVmG7tPVvLfwgp2FlZyqNiI3SHRqARqAXYP\ny4bIPmjbY7M7+NW7B9lwoIT7rxrDvZmjunW7evXEBJZensYLXxYwZWg03582tOuT+gm1Jit3vbWf\nr46d5d4rR3H/nDFu37sdz7f0Hdl7QmHBk82C78LhaKSw4MmgFH1X3D47Oxuj0UhUVBSZmZk9jucH\nismqU2yXI3G06omkEg4mq051cpZ/0B0+xqTYuWhUWl5QncPsaNlAboiPZO/0i7BrNFxkCqNae4pi\nWzi0atAWqGSEoBP99fuLeei9HExNmR3F1Y38+t2DbDxQTEWDlW+bRF6rFlyQEs0vLk/j4tRYpg6P\n5sJXP6fhhK25FB1AqgSWFN//mDqbbWu1O7hv7QE2HSrlwXnp3DV7VI9eY/ncMRw8Xc3v1n/L+KRI\nJiT17Fb96LatAWu5e6bGxI/+vZtjZ2p5/MZJLJnevm5DjcGjwKvpXRVuazpqfBWIhlh9RUZGRr8X\n+bbo02KxaqIRBfXNPYPsaZHobe2LpPzNGO0UNE3pl2fb3H0cnDwZu6ZFR+ZIC4fUpey1O/++27Ze\n9idBJ/p/zjrSLPguLA7J53lnuWjEIH55RZPIDxvUrqtedVocIrQRTX4twmRHAPYkA9VpnjeZekpn\ns221k+K4+619bDlyhoevHcfPvpfa49fRqFU8e+sUrnvma5a+sZeP7p5FVGj38qCPbtvqNlyj9txZ\ntrz0HIDPhT+vrJb//fcujI1W/nXHNK5I9zzycfoFl7rF9AGQKqZf4Ls+5BpzLDZ9+1GBGnPgxUSh\nY3alTsDqAFLcY/67VO07W/qbUHVL6qqzzXNLWwZTSEi7mtGRmir22ofxl8UZ3HxR4O7E/dsntg8o\nbeiob77k3aWX8Ku56Vw6Ks5jG9XBxmocSWFYLk/APDcJR6QWVYWF+GrPTZ16Ss3mk82C3+yd1cHZ\nT06w9I29bDlyhpULxvdK8F3Ehev5221TKTOauO+d/Tg8FDV1xra1r5EXW8G7VxTxyjXf8e4VReTF\nVrBt7Wu99q01O46f46a/78DmkLzz85kdCj44N2tnXjAbtTSABLU0MPOC2T7dxI3LuxFhd8/vFnYd\ncXk3+uw1+hvGrCzyr8zk6Ljx5F+ZiTErq69d6pKzju7Z/YlslZl60/Ct6FQtU+3q9O1j9clFzvfi\nlteP8K+ffMCBFz5ud4w/CLqVvkZTg83WPoyh0dR0ee6DBsnDFjNmnR6EwJYWgW5/JVcZffvZaK9u\n/8FkRrLCWMUuo50/LJrIbRcP93Bmz5g6bBC/v248j2w4zHNbj3NvpveZwAd0J9kxsRK7xvkHWh9q\nZ8ekSvjWd+lwH+xzpmSOjGtJyeyKeTfO8qnItyXGNBsO027ofIwpONsyGLOyKP39I0iTM2xmKymh\n9PfOrGx/twXoDYOxcwYPCzja92byN3tHCzIOOdBLFdcb07GPXceHhddSYRrEzpHjuDz/IFqH06+k\nU4IGzVTAgU2ASRvNN3st8MLHTF56rV/9DLqVvib+PyDc58YiLE57F9x2TSZ/dNQxpLoSIR3EaRtI\nDBfsO6fFZvfd0kEd7b4z3Ijk1zSwGzt/WZzhU8F38T8XD+eGKcms/uwYXx5rPwC7Iw6Mq2kWfBd2\njeTAuK4/RLtCSsmz2fk8sO4g04bH8O7SS7yuK6jfX07p47soemgbpY/von5/edcndYPIeSOIrriM\ntG1/Jf3TV0jb9leiKy4jct4In75Of6F89dPNgu9CmkyUr366jzzyjst2bkFjdX+/a6wWLtu5JaB+\nPPvF19wTp2fVxBBKDYLK/CiS80r4w5Q/8M85y6gaHMKXYyZTqw9xppjKiTishQCYGrdjMv4Di62A\nPbv83yQs6Fb6Q+NLUOvXUVZ6LdXmQUTrq0hI/Bh7pHeicNs1mW7NGjanl/Hz1/ey4UAJiy/0zeCQ\nyHkjeOa97bxlh1q0qJHYETw+I7Xbsb2cnByvMi6EEPzphkkcLa1h2dr9ZN19GUNjuu41X6e3dMvu\nLVa7g9+v/5a1u09zw5Rk/twqJbMrOtsTcW2G9xbXdTrabA82Our5EoheML0h9cAO5tXWsm3GnOYW\n2LN2fkpqwaGuT/Yhz9U5sIXp2JwEm5N03PnGNqKOR1B53LnXcPGorWy+fBHHhzjf3yte/RpH42cg\nf4pdqMFRi63hU+pDuh7z2FuCTvQfmDgLyl9HN2ZXs83iAAb/T4+uN3f8EMYlRvLc1uMsnJyERt37\nm6N/nSrgn3Y19qbbUjsCFQ7KVd2rfszJyXHLrTYajWQ1xWE9CX+ITs0Lt13Igue+5pdv7uPdpTMx\naDsv3EoIS6S0vv0bPyGs5z1C6sw27npzH18eO8s9V47igTYpmV3R0Z5IzeaTPhXlsCmDg1bk26JJ\nTMRW0n7eciB6wfSGiNg4xh/PYfzxHHd7XGBbkBhD3TeSI+vc38su/7bNmENtxCDspm0IbKil3Sn6\nANiwm7YBd+NPgi68E1mbja7Nd6VTOe09QQjBssxRnDhXT1ZO+zdFT/jHzjPNgu/CgYp/7Gw/DKIz\nsrOz3YppAKxWK9nZHX+vI+LCeOrmyRwqNrJy4+EuX2PZ1GUY1O6pkAa1gWVTl3XLVxdnakzc/MI3\nfH38HI/dOIlfeSo46wJPeyKd2XvK+v3FXPr454x8aBOXPv456/e3ay4bNAy+/z6Ewf33LAwGBt9/\nXx955B2zltyOWu2+dlWrNcxa4t/h4m2Jaqh1e1wTHsXYyHJ+mraLB8Zu46dpu7ix/DOWb36NL0MT\ncMh6ADTSjk20aIHL7k+CTvT9kV89d3wCYxMiePbz49i7mf3Slm+LjdQ6PN9gdWTviJ72S5kzfgh3\nzU5j7e7TrNvtYf5tK+anzmflJStJDEtEIEgMS2TlJSuZnzq/W76Ccxj1Dc9v57uKev55xzR+4CEH\n3xva7ol0Ze8Jrj5MxdWNSFr6MAWr8EctWEDio6vQJCWBEGiSkkh8dFW/3sQFSKquY9LpcgwWK0iJ\nwWJl0ulykqrrAurH3eEqt70F7aRBzE3MJ0pnRgiI0pmZm5jP/MuH882GAqy6cADU0oZdtLzvRYT/\n214EXXjHYglHp6v1aO8pKpVgWeZofvHmPj7KKWHh5O4XUBw4Xc2z2flk53a8txBO91aqvemX8sCc\ndA6eNvK7Dc7CrYnJHZ8zP3V+j0S+NTuOn+Pnb+zFoFXzzs9ndvp6XRE5b4RbTB9AaFU+3WTtj32Y\n/E3U8EaiFpwBYwlEqWB437Qf6Q7lq58m6WwVSWer2tkD+YF1zxWXYX3/U17U6jCGR/Lj+k/QqtxD\nkFqVg+Ti96ir/B7EJGIvL3Rb6dtVatQxnmcX+JKgW+kXFmRgt7uHTux2NYUFvas0nDchgfQhETyT\nnd+t1f7uk5X8z792suj57ew9VcUDc8Zw66ls1G1SytTY+f7JL7rlU2ZmJlqte7GVt/1S1CrBmiWT\niQvTsfSNvVQ39G5jtjM+3F/EHf/eRUKkgQ9/eUmvBB+csfboG0c3r+zV0Xqibxzt0/h7R/2W+qoP\nk9/JWefs2Go8DUjn/1n3Ou39mP6yAV2/v5xbDoSSvUPFni11JFnaF/YBYCwiPEaPOToKS8Iw1Diw\nCzUOjQ5LwjBqQ8P87qtXoi+EuFoIkSeEOC6EeMjD8w8IIY4IIXKEENlCiOGtnrtDCJHf9O8OXzrv\nCYtlCvnHLsZkCkNKMJnCyD92MRbLlF5dV6US3Js5moKz9Ww61PkflJSSHQXnWPLSN3z/hW84UlLD\nb64ey9e/uZJ7M0czv+BTbj/xKeHSBEjCpYnbT3zKVSe2dnrdtmRkZLBgwYLmlX1UVBQLFizwupQ+\nNlzP3267kPIaM8vWHuh24VZXSCl57vN87n/nIBcOH8R7v7iElEFdZwx5Q9iUwSQ+NJ2Ux2eR+NB0\nn2+4dtT4Kminc2Wvam7R3Yy10Wnvx3S00RzoDeiazSepD8nF0VSQZZcdTOqKSmHmwjTCpJ68sNEY\ntZEcD0/jlaG3kRc2mnCH71qJdESX4R0hhBp4HpiDcyj6biHExjbDUPYD06SUDUKIX+CcjnWLECIG\n+D+cc3MlsLfpXN+WuLbC2S2wgd27WqpZtVotCxb0vlvgNRMTGDMknGez87luUmK7CT5SSr7KP8ez\n2fns+a6KwRF6fjd/HLfOGEaoruVH/cblkjs//oybD37WbDNp4KVrVXS3kUBv+6VMHhrNIwvG87v1\n37ImO5/754zp8bVaY7M7+P2Gb3l712kWTU7izzdl+LTFszEri/IezEzwlgfnpbvNVoAgn85lLOqe\nvZ8w+P773IrKoG82oCsNWwmtTkfV1GTNaLudQdrnUIlWIVttCGQ+wpiMBMwbx7DDrsXRtO6uR88O\n2wjGamyeLu9TvInpTweOSykLAYQQa4GFQLPoSylbL1H/S8tcwnnAp1LKyqZzPwWuBt7uveue8We3\nQJVKcM+Vo7nn7f1c+IdPqW6wkhQdwvK5Y4gwaHn283wOFhlJijKwauEEbp421GNKZMH0ZF6kiFu/\nkMTWQEUkvHWFoHB638SKfzhjGPtPVfPM5/lMHhbN7E5aIHhD65TMu2eP4ldzu5eS2RWBqB51xe3P\nm+lcUSlNoR0P9n6M6/ftzwWAN5xL/4DUL59oftzomA1WiNK8hlqcQ0SnOIceNbVBf8+hbZfBZ0fN\nu3bnoHF/4o3oJwOt/xqKgBmdHP8TwFX+6ulcv79rerP67az7JYDV5kAAVQ3OVMni6kYeWHcQCQyN\nCeGxGyexeGpKp4VGy6YuY6VpJdsntKxODGoDK3uYBtlbhBD8YdFEjpTWcN/aA3x0j3eFW544U2Pi\nx6/sJreslj/dMIlbZ/QsQ6czOqse9eWbfdGU5OAV+ba0mcIGNK9M+zs9HZrkS2z6CsoNkiGmlsVN\no2M2jZbZlIeomHq/+z18tfSsDx3ZfYlPX0EIcRvOUM4TXR3b5rw7hRB7hBB7zp71vkWAr3FVerry\nvV2Vnq1L/P/66bF2k3okEB2q5fNfXcEPpg/rsrLUl2mQvsJZuDUVKSVL39iLydr93iXHztRy4992\ncOKcMyXTH4IPzk264uhwPh83jI8zUvl83DCKo8P7ffVovybjZljwDEQNBYTz/wXPtBvQo+AZgz6R\nZ0YZaGzz1m9UwTOj2ne2jeggU68juy/xZqVfDLTuDZDSZHNDCHEVzjuTy6WU5lbnXtHm3C/aniul\nfAl4CWDatGm+3U3sBt5UenaUvWFssKLtRrWuL9Igfc3w2DBW3zKZn7y6h9+v/5a/3JThdVhmR8E5\nfv66MyVzXS9TMruibEQKh8I1OFTOn7dJp+XQ0HjUgwYxzm+veh7gYQqbgnekpi1nr6WGP4go7s63\nMMQkOWMQPDdax+GR7TNyZhn3sCViBjZVyweCxmFlVu0eYLFfffVGpXYDo4UQI4UQOmAJsLH1AUKI\nKcCLwPVSytaJ6JuBuUKIQUKIQcDcJlu/xJtKzyHC84+sI/tAI3PcEO65chTv7i1ibReFWy7W7y/m\njpd9l5LZFccSY5oF34VDpeJYYkwHZyh4w6bCTcx9by4Zr2Yw9725bCrc1NcuDRgSExZyfxJ8kSRZ\ncP/bPrgAACAASURBVHk40+dFsODycL5K0bMitX0mUVrlIa489wUR1lqQkghrLVee+4K0Sv/3DOpy\npS+ltAkh7sYp1mrgZSnlYSHEKmCPlHIjznBOOPBu08rwlJTyeillpRDiUZwfHACrXJu6/uTljV+S\nt28HBmnGJPSkT72EH19/eZfnqaP1HoW/daXnnVLHnzG53YTpm+x9gT+yWO67agwHTlfzfxsOMyEp\nkowUz0NkpJT87YsCnticx8WpMbx427RuD2npCXUNnkvVO7IrdM2mwk2s3LESk925V1JaX8rKHSsB\n+t0daX/lJ+lzMJ0t5NmaaqoNgmiT5J7IaBYntF+MhKojsSeGYp4xBFN4NLq6auw7Qwk9Eenhyr7F\nq4pcKeXHwMdtbI+0+rrD1nBSypeBl3vqYHd5eeOXFO79khDhAAEhmCnc+yUvQ5fC702l5zXREVAN\nL2KmHMlgBD9H77R3A1+MIPRXFotaJXhmyRSue/ZrfvHGPrLuuYyYMPcPtdYpmQsnJ/EXH6dkdkZE\nbBy159rv/UTEdpAb3UP8nRban1izb02z4Lsw2U2s2bdGEX0vObazDM26U9xjadEPja6GY9pQxsxI\ncDvWeNFNfDoxGYvGuaCsiRjEp1csZHSc/9t8BEdMohV5+3agEe5xeY1wkLdvR5fnelPp2TAqmiul\nlveJYBuRvE8EV0otDaO8H6noGkFYe+4sSNk8gvDotu4VZ/mzB/qgMB1/v20qZ2vNLHl1Fxdu/5bE\nrQeYtuMwb506y09f28Pbu05z1+w0Vt88OWCCD84mWxqde58djU7v0yZbrg9UW0kJSNn8gToQpkn1\nhLL6sm7ZFdrzzYYCbBZ37bFZHHyzoaDdse9mtAi+C4tGz7sZyozcbmOQZtoNo3TZvaCrdrpf7ztL\nVIOd8QY1ISpodMARkx3jvrOk3eRdYdO2ta81z5x1YbOY2bb2tW6t9v1dgp6REs3CK0bwbnYhsqQG\nnU1SrlfxW3EKldnht5TMrnD9jPw5rL189dOURk6kYPL1mPUx6M2VpBVuRB3gni6BIiEsoYMW2gke\njlbwRF2lZ43xZC8RnsPBJcL/4dGgE32T0DPBFs1FtjTCMVCHid2aAg5rqn1y/bpKM3VAsbVN5VwH\nv3BP1FZ47svRkb0jAtED/eNKIwIJTd+uMDsAiS4tsk8E38W4WbN9Ppi9NUW2ZHLTf4BD7VyNmQ2x\n5KbfCnlv4/2wyYHDsqnL3GL60LsW2ucj4TF69ovt7Bz2EXX6KsLNg5hx6jqmyPZ19snmMxQZ2n+g\nJpt9OwHOE0EX3rl86CVcbksnghAEgghCuNyWzuVDL/HJ9cNjPLfv7cjuiY5iz92NSQeiB7r921Jk\nu1snAacqfPYa/ZHC0YuaBd+FQ62ncPSiPvLIv/TH2pGBhvWKk3w16i3qDP+/vXOPj6q89v535R4S\nyYWLuQAqCIJWFIoitVo13vrx0HistbR41NZTenmteMH3lGNVRFs81bdCrbXVatWKIke8EC/1aNRa\nKVoRPOlRUSHHIiGR+yCQTCbJev949oSZYZJMkpnZe2ae7+czn8ysvffML3v2rP3s9ay91i4Q2Fuw\ni9ePfJTAaZ8ctO78lhUURsyhFHa2Mb9lRcJ1pt1If8qmNjoJv5s0m1ymbNofl/efUTuOV5euD4vd\n5eRlMaN2XMzvccqsS/ive38dFuIZSEw6Gbeg+wPRLzd7sqcLbbnR0057sqcDXrx3JBb6uos+WSzf\nfg+BrPCbGgNZnSzffg//yuww+9e/eBasXsyiMZfRlD+Sav9W5m96kK/PuCDhOtPO6Xf6o1ep68ne\nX4Kz8Kuf2cjenX6Ky/OZUTvuoNn53ohnTDrRt6BXsZ0mDm49V0X/QlGpRnF5QdRYbHF54qsgukVz\nyzM0bryDNn8zBfmVjB03j8qKWrdl9Uoy+iXHSkv7bohyM2NL+8Gh5RUjz2TtsM089e6VVPu30lpc\nRdHZC5Jyc1zaOf1sttPJwV92dhyd1ITpFf1y8tFIdEw6Xlxb/BzX7/0WrRwIdRTi59ri54DLXNP1\n+IN3sWltJYXtZbTm7WLM1Ga+edmP4/b+8biiSyWaW55h/frr6eoyd5y3+bewfr0p/eVlx5+sfsmx\nUNHRSXPuwS61oiN89L+iZSfzPvyU1mFncP+wMwAozBLuGDk6wffiGtIupl9Y8DBCeKxMaKOw4GGX\nFKU2x0z8gJ/l3kc12xC6qGYbP8u9j2MmfuCapscfvIuWv41nSHs5gjCkvZyWv43n8QfvittnTJhe\nwemzJ3bP1RSX53P67ImDPtl7lcaNd3Q7/CBdXa00brzDJUWxkax+ybFw8V6loCv8BFTQ1cXFe8Mr\nyyxqbKY1ondFa5eyqDE5taPSbqS/+ag1HPb+XewNXEonw8lmO8W5D/GPo94h9kx6S5DN5W1MOLqB\nlz95kwJ/F235WWw8fAibywtxq7L8prWVDOkKT3nL6cpj09rKuF58xOOKLlVIRG/pZBDLXfTJ4s3y\ny5i/9Tf8trSIlpxsKjo6+cHufbw88keEztY1+QNRt+/JHm/Szun7xozlH7zDuE/+EuakfGPG9r2x\n5SAK8iv57NAtfHZowUF2tyhsL6M6Vw66V2Jze5lrmlKdgvxK2vwHp/+6+T3HQjL6JcfKG/tOQKuu\n4P5//J5qfzNN+SP5+WFXsMr3xbD1qvNz2RzFwVfnJyc5Iu2c/thx81gfuD7MSWVlFTJx3DwXVaUu\nY8fNC4v1gtmfY13cnyMLWzk+byg5zqTZkGw4fkg27e229s5A8eL3HAvBuL0XsncWnjSRa/4CTx13\nBhRkQ1snQzb4+OUpE8PWmz+2knkffsqUzj9zEUsZzg52MJzC8h8DxyRcZ9o5/eCkU6plIXgVL+7P\nqUWF5HSEZ0nkiDC1KE371yYBL37PsdLXXfTJInq3tYnd9oaGhu6Oft+dtJ9pI54lzyndOJxtZLUs\norm0OOH7XFRdK18flWnTpumaNWtc+/xUTFvLNDb/5C89Lht12ylJVJJeeCXfPR1paGigrq6OQMCE\ndU448UkKCg6+Mi3Ir+Lkk3s+vntDRN5R1Wl9rZd2I30w1e4GkkefqmlrmYaXJu/SBS/lu6cj9fX1\n3Q4fID8/eigyGRPnMTl9ETkXWIKpp/97Vb0tYvmpwGJgMjBLVZ8IWdYJBDsDbFLVr8VDeE989FZL\nWH713p1+Xl26HqBPx99b2lq8nb69ohg4Xpq8Sxe8lO+eLoQOPn2H+sIKQfr9RfxPZxvP+XLZ1SmU\nZSvnlQT4cvmhCdfVp9MXkWzgbuAsTGPzt0Vkpaq+H7LaJkyyXLRZn1ZVPT4OWmOit/KmfTn9ZKWt\nxfOKIh51+VMNL03epQteynfvL881PseStUto2ddCRVEFc6fOdb2cROTgc4jms18O7MuXPh3D64Wf\nEFBzJtjVKTy+K4/q6jM5uDxbfIllpH8isEFVGwFEZBlQC3Q7fVX9xFnWFe0Nkkl/yptGkqy0tXhd\nUQTr8gdr+ATr8gMZ4fitk48fqRoy82rHr8jB5wkd43gjdz2djov8a/bWbocfJKDCw42ruHhqYrXF\nckduNRDaLHWzY4uVAhFZIyJvikjCSxQOpgrm2HHzyMoKzwBJRNpavK4oeqvLb7H0h6HnHI7khruD\nVAiZ9dbxy00iB5nVgQpOCUykuKsAFFpzWqNul4ymNcmYyD1MVZtEZCzwioj8XVXDWsmIyBxgDsCY\nMYOr0T6YminJSluL1xVFvOrypyJPr2uKSI07qjs1ztJ/UjVk5tWOX8Xl+WGO//22To7PquDILvMb\n/0vgVab5NzF3l4+Kzk5asrNZUlbCuorEd2uIxek3AaNDXo9ybDGhqk3O30YReQ2YAmyMWOde4F4w\nKZuxvnc0BlsFs7KiNuETqvG6ESZZvWK9xtPrmpj/5N9pDZhCVk27W5n/pMkVsI5/4KRiyMyrHb+O\nG+Nj9bYsurJNuZCmgCJ7/Rxfmkd2Zxbf21NM7d5dFDop81WdnSzYsYs/VSX+txuL038bGC8iR2Cc\n/Szg27G8uYiUAftV1S8iw4GTgV8MVGyseL1mSryuKOJVlz/VuP3FD7sdfpDWQCe3v/ihdfoZhlc7\nfhUt/39M7Khi49gD7TaHNq6kPWcL41+p5/SfXdDt8IMUqvKlD15KuLY+nb6qdojIFcCLmJTNB1T1\nPRFZCKxR1ZUicgLwFFAGzBSRm1X1GGAS8DtngjcLuC0i68dzDDTHv7/E44oiGb1ivciW3dHjoT3Z\nLelLcLLWa9k7Hc3NVOgWKraG32ja4ZQOGRFoj7pdT/Z4ElNMX1WfB56PsN0Y8vxtTNgncru/AscO\nUmPSGEyOv1skoy6/1+7UrCotpCmKg68qtWUYMpGA73j2bfgJn+9u5ZDSQgLj3Kr/eoC++ldvy83j\n0CgOfltuHonO1E+7evqDobcc/0xl37qtLFvewPm7t3MKezh/93aWLW9g37rEN3DuievOOYrC3Oww\nW2FuNted4/6P3ZJcgvM7TbtbUQ7M7zy9LuZpx4TQV//q3Yd9n66IMXcXOew+7PsJ12adfgiDyfFP\nV5Y+3cAv1M9nKAp8hvIL9bP06QbXNJ0/pZpFFxxLdWkhAlSXFrLogmNtPD8D6W1+x01KZs6k8paF\n5FRVgQg5VVVU3rKwu7Vp1/5yPhhfTGt+Fgq05mfxwfhiuvaXJ1xbWtbeGSiRaVah9kzlfn87kXvE\n79jnuCHI4fwp1dbJWzw9v9Nb/+qt1cvoKMyhpTLcyee0LmMS1yRUlx3phzCjdhw5eeG7JJ37osbC\nVqLfZN2T3WJJJj3N43h9fqejYEe/7PHEOv0QMq0vaiwMyW7rl91iSSapOr+T7YsePejJHk9seCcC\nr+f4J5sLTy3kkdc66NQDh0q2dHDhqd4eSVkyg+iNS7x/d3bBs/nsvyiA5oVUim3PouDZfLggsZ9t\nnf5AaFgO9QvBtxlKRkHNjTD5IrdVJYSbzzkPeI6lq/bQ0X4IOXmfM/vkoY7dYnGfVJzfKT32WrIf\n/Tn7ZvrpLIfsnVBUl8shU65N+Gfbzln9pWE51F0JgZCJotxCmPmrtHX8Fosl/qy/8xHaHr6HvNad\ntBeWU3DJD5l49cUDfr+M7pyVUOoXhjt8MK/rF1qnb7FYYmZjbRlLRhfRsu9zKoqKmDu1jIl9bzZo\nrNPvL77NvNZcQu66Ikr3wO6hEJiyj9PY7LYyi8WSIrjZByAtnX4iu0m9trOK0lVKfod5Xb4H/KuK\neO2MYk6LyydYLJZ0p7c+ANbp95NEd5PKfUvI7wifB8nvMPZ0paGhgfr6enw+HyUlJdTU1DB58mS3\nZVksKYubfQDSLk8/0d2kSn3Rb0rqyZ7qNDQ0UFdXh8/nA8Dn81FXV0dDg3tlGCyWVKenev/J6AMQ\nk9MXkXNF5EMR2SAiP4my/FQRWSsiHSJyYcSyS0XkY+dxabyE98Sgu0k1LIc7vwALSs3fhuVhi3eX\nZEfdrCd7qlNfX08gEAizBQIB6uvrXVJkSRS+ujo+PqOGDyYdzcdn1OCrq3NbUtoyd+pcCrLDC7Il\nqw9An05fRLKBu4GvAkcD3xKRoyNW2wRcBjwasW05cBMwHdNg/SansUrC6KlrVEzdpILpmL5PATV/\n664Mc/yBORfhzw3fzJ9r7OlIcIQfq92Smvjq6mi+4UZTDliVji1baL7hRuv4E8R5Y89jwZcWUFlU\niSBUFlWy4EsLktIHIJaY/onABlVtBBCRZUAt0N0MRVU/cZZFxjjOAV5S1Z3O8peAc4HHBq28B06Z\ndQkv/G4JGujotkluTmzdpGJIxzzt8hu5taiaZXlj2FE6jGG7dzCrfRM/nXV5PP8Nz1BSUhLVwZeU\nlLigxpIott65GG0Ln1jUtja23rm4x6JhlsFx3tjzXGn2Ekt4pxr4NOT1ZscWC4PZdkA0Vu9n1Rd2\nsLegA0XZW9DBqi/soLF6f98b+3pIuwyxr2jZyf2V09heNgKVLLaXjeD+ymmsaNkZp//AW9TU1JCb\nG35pk5ubS01NjUuKLImgo/ngPrO92S2piyeyd0RkDphKvWPGjBnUey1Zu4Tmyt18VLn7IHufZ9WS\nUU5oJ4rdYVFjM61d4dk7rV3KosZmvl6R+FrYySaYpWOzd9Kbvjo9WdKHWJx+EzA65PUoxxYLTRCW\nvj4KeC1yJVW9F7gXTBmGGN87KoNKhaq5MXqJhZruzpA0+QNkbdlHzsefI22daEE2HeMPoamqaDCy\nPc3kyZOtk09zRl59Fc033BgW4gnt9GRJH2IJ77wNjBeRI0QkD5gFrIzx/V8EzhaRMmcC92zHljAG\nlQo1+SJTQ6dkNCDmb0RNnWHb/OS+5yOrrRMBsto6yX3Px7Btmdtdy5L69NXpyZIA+sgUTBR9jvRV\ntUNErsA462zgAVV9T0QWAmtUdaWInAA8BZQBM0XkZlU9RlV3isgtmBMHwMLgpG6imDt1btjtzdDP\nVKjJF/VaQyf34z1IRHhHupTcj/cMSK/F4hV66/RkiTMNy3l6xVJu989jC8OoatvBdSuWcj4kvIZX\nTDF9VX0eeD7CdmPI87cxoZto2z4APDAIjf0iGLdfsnYJLftaqCiqYO7UuXGbJd/9+cEd7HuzpwO+\nujq23rmYjuZmciorGXn1VdY5WCyD4OlnVzLffymtmKYpTYxgvv9SePZJzveC0081EpkKVVVaSFOU\n/pteb882UIL528FYbzB/G7CO32IZILfvObPb4QdpJZ/b95xpRvsJJO3KMCSaVG3PNlB6y9+2WCwD\nYwvRbxbtyR5P0nKkn0hStT3bQLH52xZL/KkaojTtP7hIY9WQxDe1sk5/AKRie7aBYvO3LZb4c93M\nqcx/Yh2tnQccf2G2ct3MqQn/bBvesfTKyKuvQgrCC0PZ/G2LZXCcP6WaRRdOobq0EAGqSwtZdOGU\npAwm7Ujf0ivByVqbvWOxxBe3IgbW6Vv6xOZvWyzpgw3vWCwWSwZhnb7FYrFkENbpWywWSwZhnb7F\nYrFkENbpWywWSwZhnb7FYrFkEDZl0yU+equF1c9sZO9OP8Xl+cyoHceE6THU/LdYLJZBENNIX0TO\nFZEPRWSDiPwkyvJ8EXncWf6WiBzu2A8XkVYRedd5/Da+8lOTj95q4dWl69m70zRe2bvTz6tL1/PR\nWzF097JYLJZB0KfTF5Fs4G7gq8DRwLdE5OiI1S4HdqnqkcCdwH+ELNuoqsc7jx/ESXdKs/qZjXS0\nd4XZOtq7WP3MRpcUWSyWTCGWkf6JwAZVbVTVdmAZUBuxTi3wkPP8CaBGRA4uIWcB6B7hx2q3WCyW\neBGL068GPg15vdmxRV1HVTsAHzDMWXaEiKwTkT+LyCmD1JsWFJfn98tusVgs8SLR2TvNwBhVnQJc\nAzwqIkMjVxKROSKyRkTWbNu2LcGS3GdG7Thy8sJ3fU5eFjNqx7mkyGKxZAqxOP0mYHTI61GOLeo6\nIpIDlAA7VNWvqjsAVPUdYCMwIfIDVPVeVZ2mqtNGjBjR//8ixZgwvYLTZ0/sHtkXl+dz+uyJNnvH\nYrEknFhSNt8GxovIERjnPgv4dsQ6K4FLgdXAhcArqqoiMgLYqaqdIjIWGA80xk19CjNheoV18haL\nJen06fRVtUNErgBeBLKBB1T1PRFZCKxR1ZXA/cAfRWQDsBNzYgA4FVgoIgGgC/iBqu5MxD9isVgs\nlr4R1cT3ZOwP06ZN0zVr1rgtw2KxWFIKEXlHVaf1tZ4tw2CxWCwZhHX6FovFkkFYp2+xWCwZhHX6\nFovFkkF4biJXRLYB/3BbRxSGA9vdFhEFqyt2vKgJrK7+YnVF5zBV7fNGJ885fa8iImtimRlPNlZX\n7HhRE1hd/cXqGhw2vGOxWCwZhHX6FovFkkFYpx8797otoAesrtjxoiawuvqL1TUIbEzfYrFYMgg7\n0rdYLJYMwjp9i8ViySCs008BbOvJ2HH6OXgSEfHc701EPNu5x2v7S0SOEZECt3UMFk/tVLdw6v57\n8SA7SUTuAo5wW0soIlLp/M12W0sQEZkhIvcBJ7itJRQRmSoi3wZQ1S639QRxdL0O3Batm51biMiJ\nInIleGd/ichkEXkDuJUDbWBTFk85uWQjIkNF5I/AuyIyQVW7vOL4ReQ6TDbAR0CTFxysiBQ7+6tJ\nRI51muN4Qdf3MPtqLbDOI5pERG4B6oFrReRkx+768SUieRgH9riqfkNV9zh2V68oReQq4CngpyLy\nVcfm+ncJ/BR4QlX/WVWbwP19NRhcPwBd5hKgA3gMuBm8M7oADgW+q6p3OW0nO90WBPwT8CmwGLgH\nwCO6xgDXq+o9qtrmBU1q0uLeB74J3A3McexeOL6mYtqZ3g3dV0n56n4q3wbMMfZDYD6Y48stBysi\nWU7Hv72qutixnSUipZiGUinp/DMuZVNEpgL7VXW9iJQARUArpjPYTar6gohkJ9txOLo+V9WPReRQ\n4EngDEz3sTnAn4G1qvpXEZFk/UCdNpktqtoqImVArqpuFZFNwP9V1WUikqOqHcnQE6Jpi6r6RaQc\n07nth8DRwL9h9tV6VX0yyfvqIkwP6Ted7ykLUGAScCPwjKo+luzjK0TXalVd7YTnngFuAa4EOoGt\nwAuq+lgSdZ2Eaaf6kfNaMAPRXMzx/ydV/VUyj68omoYC7wBXAd8DCoHPgA9UdVEyNMUdVc2IByYu\n/hymj+9bQE3E8suB1z2g6yzH/kfMD/MPwDeAhUAdMD5Jug4HXsCEJ1YAR0UsvxDYlOR9FalpkmP/\nvWP7FfA14DvAu8BxSdKVjXHq7wDXAH8HLghZXgjMBp4GypK4v6Lp+jqmTeoNwKvB34Gzz+4DJiZB\nV6lzzH+OCZ0UOfaskHVqgP8GhidpX0XV5Cz7d0zo8GvO61Od3+ZJyfou4/lI6/BOxKXXPOBdVZ2B\n+fFdHrH6UmCf0w84GPd0U9fvgClAvar+J7AEc/n7pSTqektVazDO4RYROSa4UFWfADaLyM3OtgnJ\nauhF0yvArc6o/ybgWKBZVVeq6h+A54HaRGiKRM2o/SjgWlX9paPnChGZ5CxvBf4KNAEXOP9XwrNm\nouhagLkimohxqMcAwe/tFeAQYF+idWGurl8Efuw8P9XRGxr6eg1401kHETnRDU0Oz2IGHGXO6zWY\n0b4/wZoSQlo7fZwD2nEc+4CAYy8BPhCRo4IrqmobJo74HRG5CZjvhH+Sret9ERmvqm9gDraLHX07\ngGrgvQRpCtUVTHt83/nsXwMnArNFZGTI+ucDV4rIAmCJE5ZKlqa7gS8C38eUs/09ZhQbZCTG0SYE\nEblERL7ixHfBOIEyJxTxpKPzm8GJSFX9X2AZsFBE9mD2Z7J1rcAkBnwNeAP4BTDXCUOdBZQDbQnW\nNVTNZOi9wHLn86aLSJWznkD3CetW4N9ExAdMjXf8PAZN1Y6WBuA6zIl8OOY3+QVgRzz1JIu0dPrO\nZMtLwO0icpGaa7I3gPEisg44F3Pp+4iInB1yMI3EfJlnYmbrfS7pWioiZwJXAwUicquIrMbEXuPe\nayCKrg5gJzBFRI4TkeOA/8FMmJaHbDoCGAqcBvxaVT9zQdNoYLSq/juwSURuE5E3HZ1xPUGKoVJE\nXgUuxYRs7haRYsyJ51ig2Fn9LuCfMccUzqj/PkfTlzWOsfN+6voVZnI5X1XvwIR+/gB8G5irqtsS\nrOseERmuZsJ9P/AyZgR9BpgJcDETqEcCjwKrMPvrt87vJemaHF33YxI+FmAGF/+qqpsGq8cV3I4v\nxfsBHImJjddiwiOPAvOcZUcBT4asewNwp/N8HCZO9w2P6Pq183wkMB34pyTpegz4EeZS/wbM1cYb\nwDRH8xXOdqOA3wLf9ICmq53thmJCF2cnQFO283cC8EjQhsliegATE/4TJiwwxFn+OMaRAlQm4jsc\nhK5rnOcCFCdR112hx7pjvxozqi8J0TgSON0jmg4JsefGe18l++G6gDh9mVk4k0CYM/dvQpZ9F9iN\nSYEcgYmNBycAvww8QcgEksd0iQu6Lnd0jXBejw1Z9n8wIxxPakrE/nKcws+B/wC+AswEHopYvhUT\nH78E+A3OiRAzTzQ9QfsrVXVlAS3AV0JsxZg04L9hwlGjPKipKhH7y41Hyod3ROQ7wGZM+hmYDIVZ\nzgQfmPSvRmf555jL/itFZC5msvRlQBMQL4yHrrgTg64cYCNwp/P6f53t5mCc71qvalLn1xpHXV/B\nhD/KMJPot2DmX04PTiyqiT3fDNyuqg8D/wVc4oTrcpz/Ja6kuK4uTIhkQcim52Gu5P4bOFZVN3tQ\n05Z4aXIdt886gzyDF2MyXuZifvgTHftiTEhgFfAIJqb5AmZWfhJmhv4hEpRylSa6ngMOdZZfBbwN\nnJAJmkK0nQL8S8jr32CyXy4D3nFsWUAF5spstGOrIORqxOqKqms5cLhjqwVOzRRNbj9cFxCHL3WM\n8/c2zG3lYC7nyjETQGAm+x4C8qyumHU9iJnsAyfOmkmagp8B5HMgFjwbWOQ8fxf4sfN8GvBYEr9D\nqyuFNbn9SPnwjh6YQV8MHCEi56i5tPWpSXsE+AEmNTJpd0Gmga79mBIVqMloyChNwc/Q8BIYZwHB\n7JbvAJNE5FnMFUncw16ZoCveYdVU0OQ6bp914vnA5Gz/OeT1iZiMnOeBCqvL+7o8qikbEwJ4ATjS\nsR2JyYz5MlBtdXlblxc1ufVIm9o7IpKlpkrmE0Az5m65l4GPVXWj1eV9XV7U5OgSIA9zA9hTmMyr\nHZjQwB6ry/u6vKjJNdw+68T5bD4EeB1zQ8qVbuuxutJDk6PrJKALc3/A5W7rsbrSQ5MbD892GRog\nP8LE5c5SVS/VxbC6YseLmsCklF4P/NLqigkv6vKipqSTNuEdOBAecFtHJFZX7HhRk8WSTqSV07dY\nLBZL76R8yqbFYrFYYsc6fYvFYskgrNO3WCyWDMI6fYvFYskgrNO3WCyWDMI6fYvFYskgrNO3t4eC\nowAAAAtJREFUWCyWDOL/AwQ++rZPiOnnAAAAAElFTkSuQmCC\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "ax.plot_date(stones_df['release_date'].values, stones_df['gloom'].values, linestyle='-')\n", "\n", "for a in stones_df.itertuples():\n", " for t in tracks.find({'album.id': a[1], 'gloom': {'$exists': True}}):\n", " ax.scatter(a.release_date, t['gloom'])\n", "\n", "fig.autofmt_xdate()\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 301, "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namenamerelease_dategloom
276400dnyeDyD2mIFHfkwHXNRadioheadPablo Honey1993-02-220.342392
26500FEaUzn8lN9zWFyZG5C2RadioheadThe Bends1995-03-280.340483
257dxKtc08dYeRVHt3p9CZJnRadioheadOK Computer1997-05-280.350469
2419RUXBFyM4PpmrLRdtqWbpRadioheadKid A2000-10-010.341239
236V9YnBmFjWmXCBaUVRCVXPRadioheadAmnesiac2001-03-120.372214
211oW3v5Har9mvXnGk0x4fHmRadioheadHail To the Thief2003-01-010.312446
206Eo5EkmdLvZrONzi046iC2RadioheadCom Lag: 2+2=52004-03-240.262193
1936lJLPoPPOKNFddTAcirncRadioheadIn Rainbows Disk 22007-01-010.380068
187eyQXxuf2nGj9d2367Gi5fRadioheadIn Rainbows2007-12-280.323648
131DBkJIEoeHrTX4WCBQGcCiRadioheadThe King Of Limbs2011-02-180.280447
166vuykQgDLUCiZ7YggIpLM9RadioheadA Moon Shaped Pool2016-05-080.381159
\n", "
" ], "text/plain": [ " _id artist_name name release_date \\\n", "27 6400dnyeDyD2mIFHfkwHXN Radiohead Pablo Honey 1993-02-22 \n", "26 500FEaUzn8lN9zWFyZG5C2 Radiohead The Bends 1995-03-28 \n", "25 7dxKtc08dYeRVHt3p9CZJn Radiohead OK Computer 1997-05-28 \n", "24 19RUXBFyM4PpmrLRdtqWbp Radiohead Kid A 2000-10-01 \n", "23 6V9YnBmFjWmXCBaUVRCVXP Radiohead Amnesiac 2001-03-12 \n", "21 1oW3v5Har9mvXnGk0x4fHm Radiohead Hail To the Thief 2003-01-01 \n", "20 6Eo5EkmdLvZrONzi046iC2 Radiohead Com Lag: 2+2=5 2004-03-24 \n", "19 36lJLPoPPOKNFddTAcirnc Radiohead In Rainbows Disk 2 2007-01-01 \n", "18 7eyQXxuf2nGj9d2367Gi5f Radiohead In Rainbows 2007-12-28 \n", "13 1DBkJIEoeHrTX4WCBQGcCi Radiohead The King Of Limbs 2011-02-18 \n", "16 6vuykQgDLUCiZ7YggIpLM9 Radiohead A Moon Shaped Pool 2016-05-08 \n", "\n", " gloom \n", "27 0.342392 \n", "26 0.340483 \n", "25 0.350469 \n", "24 0.341239 \n", "23 0.372214 \n", "21 0.312446 \n", "20 0.262193 \n", "19 0.380068 \n", "18 0.323648 \n", "13 0.280447 \n", "16 0.381159 " ] }, "execution_count": 301, "metadata": {}, "output_type": "execute_result" } ], "source": [ "radiohead_df = albums_df[(albums_df['artist_name'] == 'Radiohead') & (albums_df['gloom'] > 0)]\n", "radiohead_df" ] }, { "cell_type": "code", "execution_count": 302, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "ax.plot_date(radiohead_df['release_date'].values, radiohead_df['gloom'].values, linestyle='-')\n", "\n", "for a in radiohead_df.itertuples():\n", " for t in tracks.find({'album.id': a[1], 'gloom': {'$exists': True}}):\n", " ax.scatter(a.release_date, t['gloom'])\n", "\n", "fig.autofmt_xdate()\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Complexity per album\n", "Let's generate the same plots for \"complexity\" per album.\n", "\n", "* [Top](#top)" ] }, { "cell_type": "code", "execution_count": 303, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/plain": [ "defaultdict(int,\n", " {'03Qh833fEdVT30Pfs93ea6': 0.3084131495395589,\n", " '064eFGemsrDcMvgRZ0gqtw': 0.4930224271112733,\n", " '0PYyrqs9NXtxPhf0CZkq2L': 0.3973574748657116,\n", " '0ZGddnvcVzHVHfE3WW1tV5': 0.3476089167176396,\n", " '0aWIIpfY32rT1i3yO9LROl': 0.2808487462442757,\n", " '19K3IHYeVkUTjcBHGfbCOi': 0.49631836159501724,\n", " '19RUXBFyM4PpmrLRdtqWbp': 0.19854806544129924,\n", " '1DBkJIEoeHrTX4WCBQGcCi': 0.2386589222850704,\n", " '1PULmKbHeOqlkIwcDMNwD4': 0.33583806070307276,\n", " '1WSfNoPDPzgyKFN6OSYWUx': 0.40386775201828523,\n", " '1YvnuYGlblQ5vLnOhaZzpn': 0.4516868972238403,\n", " '1oW3v5Har9mvXnGk0x4fHm': 0.3027634317483144,\n", " '25mfHGJNQkluvIqedXHSx3': 0.45746084225123357,\n", " '2Pqkn9Dq2DFtdfkKAeqgMd': 0.2836235772811999,\n", " '2b3y5k1DchDACjH5KMlgQv': 0.2620656619335576,\n", " '2gCp8kyDcL93s4kVP4VMTC': 0.38030471265793914,\n", " '2pCqZLeavM2BMovJXsJEIV': 0.35381348619405956,\n", " '2wZgoXS06wSdu9C0ZJOvlc': 0.4528622368296807,\n", " '34d9ClCaKRoQ8pMeJ9Gfvt': 0.3294492172226805,\n", " '36lJLPoPPOKNFddTAcirnc': 0.17257290309303072,\n", " '3LXItxKnnJcEDc5QdTc00n': 0.2612457267718866,\n", " '3OdI6e43crvyAHhaqpxSyz': 0.45044147679645985,\n", " '3nkEsxmIX0zRNXGAexaHAn': 0.5795431082479532,\n", " '3wkyUMDuH56iNaSxKvukax': 0.28733424313000205,\n", " '3yNf6JVyEEqvM4OqKEmZSC': 0.35818886569096825,\n", " '47bcKzmKgmMPHXNVOWpLiu': 0.2983343273363503,\n", " '4FTHynKEtuP7eppERNfjyG': 0.4216520674784138,\n", " '4g9Jfls8z2nbQxj5PiXkiy': 0.34951645999826014,\n", " '4jbWZmf7kRxCBD6tgVepYh': 0.5067098970469254,\n", " '500FEaUzn8lN9zWFyZG5C2': 0.2404738747587369,\n", " '5D7RtaChuvF0Av1xXT3acu': 0.29404083798098,\n", " '5ju5Ouzan3QwXqQt1Tihbh': 0.4413990833150702,\n", " '62ZT16LY1phGM0O8x5qW1z': 0.3370010084627114,\n", " '6400dnyeDyD2mIFHfkwHXN': 0.23265149739702773,\n", " '6Eo5EkmdLvZrONzi046iC2': 0.372129869087324,\n", " '6FjXxl9VLURGuubdXUn2J3': 0.4623172117670285,\n", " '6P9yO0ukhOx3dvmhGKeYoC': 0.28166948551428345,\n", " '6V9YnBmFjWmXCBaUVRCVXP': 0.15646994141329132,\n", " '6hB5kO3oV3tlnblCNSSA9Z': 0.37629137104445803,\n", " '6iCIB08bkoitQOL5y2uEsM': 0.2767431040799063,\n", " '6vuykQgDLUCiZ7YggIpLM9': 0.11893925175379598,\n", " '71Mwd9tntFQYUk4k2DwA0D': 0.547707291264662,\n", " '7BgGBZndAvDlKOcwe5rscZ': 0.5094855361235382,\n", " '7Hk1X2BCADxuR9saTIKfOW': 0.5085094537780754,\n", " '7dxKtc08dYeRVHt3p9CZJn': 0.16206422141004223,\n", " '7eyQXxuf2nGj9d2367Gi5f': 0.29308877785402876,\n", " '7gDXyW16byCQOgK965BRzn': 0.46972837836417425})" ] }, "execution_count": 303, "metadata": {}, "output_type": "execute_result" } ], "source": [ "pipeline = [\n", " {'$match': {'gloom': {'$exists': True}}},\n", " {'$group': {'_id': '$album.id', 'avg_complexity': {'$avg': '$complexity'}}}]\n", "album_complexities = collections.defaultdict(int, {a['_id']: a['avg_complexity'] for a in tracks.aggregate(pipeline)})\n", "album_complexities" ] }, { "cell_type": "code", "execution_count": 304, "metadata": { "scrolled": true }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
_idartist_namenamerelease_dategloomcomplexity
157gDXyW16byCQOgK965BRznThe BeatlesPlease Please Me (Remastered)1963-03-220.1844340.469728
143nkEsxmIX0zRNXGAexaHAnThe BeatlesWith The Beatles (Remastered)1963-11-220.1518910.579543
1271Mwd9tntFQYUk4k2DwA0DThe BeatlesA Hard Day's Night (Remastered)1964-07-100.2162810.547707
117BgGBZndAvDlKOcwe5rscZThe BeatlesBeatles For Sale (Remastered)1964-12-040.1761340.509486
1019K3IHYeVkUTjcBHGfbCOiThe BeatlesHelp! (Remastered)1965-08-060.2214670.496318
\n", "
" ], "text/plain": [ " _id artist_name name \\\n", "15 7gDXyW16byCQOgK965BRzn The Beatles Please Please Me (Remastered) \n", "14 3nkEsxmIX0zRNXGAexaHAn The Beatles With The Beatles (Remastered) \n", "12 71Mwd9tntFQYUk4k2DwA0D The Beatles A Hard Day's Night (Remastered) \n", "11 7BgGBZndAvDlKOcwe5rscZ The Beatles Beatles For Sale (Remastered) \n", "10 19K3IHYeVkUTjcBHGfbCOi The Beatles Help! (Remastered) \n", "\n", " release_date gloom complexity \n", "15 1963-03-22 0.184434 0.469728 \n", "14 1963-11-22 0.151891 0.579543 \n", "12 1964-07-10 0.216281 0.547707 \n", "11 1964-12-04 0.176134 0.509486 \n", "10 1965-08-06 0.221467 0.496318 " ] }, "execution_count": 304, "metadata": {}, "output_type": "execute_result" } ], "source": [ "albums_df['complexity'] = albums_df['_id'].apply(lambda i: album_complexities[i])\n", "# beatles_df = albums_df[albums_df['release_date'] < datetime(1971, 1, 1)]\n", "beatles_df = albums_df[(albums_df['artist_name'] == 'The Beatles') \n", " & (albums_df['gloom'] > 0)\n", " & (albums_df['release_date'] < datetime(1971, 1, 1))]\n", "stones_df = albums_df[(albums_df['artist_name'] == 'The Rolling Stones') & (albums_df['gloom'] > 0)]\n", "radiohead_df = albums_df[(albums_df['artist_name'] == 'Radiohead') & (albums_df['gloom'] > 0)]\n", "albums_df.head()" ] }, { "cell_type": "code", "execution_count": 305, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "ax.plot_date(beatles_df['release_date'].values, beatles_df['complexity'].values, linestyle='-')\n", "\n", "fig.autofmt_xdate()\n", "\n", "for a in beatles_df.itertuples():\n", " for t in tracks.find({'album.id': a[1], 'complexity': {'$exists': True}}):\n", " ax.scatter(a.release_date, t['complexity'])\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 306, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nSUVORK5CYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "ax.plot_date(stones_df['release_date'].values, stones_df['complexity'].values, linestyle='-')\n", "\n", "fig.autofmt_xdate()\n", "\n", "for a in stones_df.itertuples():\n", " for t in tracks.find({'album.id': a[1], 'complexity': {'$exists': True}}):\n", " ax.scatter(a.release_date, t['complexity'])\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 307, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "ax.plot_date(radiohead_df['release_date'].values, radiohead_df['complexity'].values, linestyle='-')\n", "\n", "fig.autofmt_xdate()\n", "\n", "for a in radiohead_df.itertuples():\n", " for t in tracks.find({'album.id': a[1], 'complexity': {'$exists': True}}):\n", " ax.scatter(a.release_date, t['complexity'])\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "That isn't what I was expecting. I was expecting the complexity to go up over time, as bands became more adept at contrasting lyrics and melody. It could be because high complexity requires high valence, and bands tend not to become more \"poppy\" over time.\n", "\n", "Let's test that, by also showing the valence of tracks and albums over time." ] }, { "cell_type": "code", "execution_count": 308, "metadata": {}, "outputs": [], "source": [ "pipeline = [\n", " {'$match': {'valence': {'$exists': True}}},\n", " {'$group': {'_id': '$album.id', 'avg_valence': {'$avg': '$valence'}}}]\n", "album_valences = collections.defaultdict(int, {a['_id']: a['avg_valence'] for a in tracks.aggregate(pipeline)})\n", "albums_df['valence'] = albums_df['_id'].apply(lambda i: album_valences[i])\n", "# beatles_df = albums_df[albums_df['release_date'] < datetime(1971, 1, 1)]\n", "beatles_df = albums_df[(albums_df['artist_name'] == 'The Beatles') \n", " & (albums_df['valence'] > 0)\n", " & (albums_df['release_date'] < datetime(1971, 1, 1))]\n", "stones_df = albums_df[(albums_df['artist_name'] == 'The Rolling Stones') \n", " & (albums_df['valence'] > 0)]\n", "radiohead_df = albums_df[(albums_df['artist_name'] == 'Radiohead') \n", " & (albums_df['valence'] > 0)]" ] }, { "cell_type": "code", "execution_count": 309, "metadata": {}, "outputs": [ { "data": { "image/png": "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\nYII=\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "ax.plot_date(beatles_df['release_date'].values, beatles_df['complexity'].values, linestyle='-', color='blue')\n", "ax.plot_date(beatles_df['release_date'].values, beatles_df['valence'].values, linestyle='-', color='orange')\n", "\n", "fig.autofmt_xdate()\n", "\n", "for a in beatles_df.itertuples():\n", " for t in tracks.find({'album.id': a[1], 'complexity': {'$exists': True}}):\n", " ax.scatter(a.release_date, t['complexity'], color='blue')\n", " ax.scatter(a.release_date, t['valence'], color='orange')\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 310, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "ax.plot_date(stones_df['release_date'].values, stones_df['complexity'].values, linestyle='-', color='blue')\n", "ax.plot_date(stones_df['release_date'].values, stones_df['valence'].values, linestyle='-', color='orange')\n", "\n", "fig.autofmt_xdate()\n", "\n", "for a in stones_df.itertuples():\n", " for t in tracks.find({'album.id': a[1], 'complexity': {'$exists': True}}):\n", " ax.scatter(a.release_date, t['complexity'], color='blue')\n", " ax.scatter(a.release_date, t['valence'], color='orange')\n", "\n", "plt.show()" ] }, { "cell_type": "code", "execution_count": 311, "metadata": {}, "outputs": [ { "data": { "image/png": "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\n", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fig, ax = plt.subplots()\n", "ax.plot_date(radiohead_df['release_date'].values, radiohead_df['complexity'].values, linestyle='-', color='blue')\n", "ax.plot_date(radiohead_df['release_date'].values, radiohead_df['valence'].values, linestyle='-', color='orange')\n", "\n", "fig.autofmt_xdate()\n", "\n", "for a in radiohead_df.itertuples():\n", " for t in tracks.find({'album.id': a[1], 'complexity': {'$exists': True}}):\n", " ax.scatter(a.release_date, t['complexity'], color='blue')\n", " ax.scatter(a.release_date, t['valence'], color='orange')\n", "\n", "plt.show()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "It definitely looks like the Beatles changed style over time, with the _White Ablum_ / _Yellow Submarine_ (around 1969) being a glitch in the trend. _Hail to the Thief_ and _Com Lag_ are unusual albums for Radiohead." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Conclusion\n", "A couple of things have come out of this. \n", "\n", "One is that the original analysis is very sensitive to how the sentiment of lyrics is determined. That means I'm not too confident about the reliability of results from either fitteR-happieR or this notebook.\n", "\n", "Another is that the Beatles are undoubtedly better than Radiohead. The happiest Beatles sonds are happier than anything Radiohead have done, and their saddest songs are about as sad as Radiohead. In just about every measure, the Beatles' range of music is larger, and covers, Radiohead's.\n", "\n", "QED.\n", "\n", "## Next steps\n", "The obvious next step is to analyse a different group. What would Queen or ELO look like? Is Adele more depressing than Radiohead?\n", "\n", "Another approach would be to apply some machine learning / data mining techniques, perhaps to train a better sentiment analyser, or to cluster songs into groups. Which songs by different artists are most similar to each other?\n", "\n", "* [Top](#top)" ] }, { "cell_type": "code", "execution_count": null, "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.5.3" } }, "nbformat": 4, "nbformat_minor": 1 }