[
  {
    "path": "Emotion_features.csv",
    "content": "id,song_name,class,label,tempo,total_beats,average_beats,chroma_stft_mean,chroma_stft_std,chroma_stft_var,chroma_cq_mean,chroma_cq_std,chroma_cq_var,chroma_cens_mean,chroma_cens_std,chroma_cens_var,melspectrogram_mean,melspectrogram_std,melspectrogram_var,mfcc_mean,mfcc_std,mfcc_var,mfcc_delta_mean,mfcc_delta_std,mfcc_delta_var,rmse_mean,rmse_std,rmse_var,cent_mean,cent_std,cent_var,spec_bw_mean,spec_bw_std,spec_bw_var,contrast_mean,contrast_std,contrast_var,rolloff_mean,rolloff_std,rolloff_var,poly_mean,poly_std,poly_var,tonnetz_mean,tonnetz_std,tonnetz_var,zcr_mean,zcr_std,zcr_var,harm_mean,harm_std,harm_var,perc_mean,perc_std,perc_var,frame_mean,frame_std,frame_var\r\n1,30 seconds to Mars - Night of the Hunter.mp3,relax,3,117.4538352,139925,1283.715596,0.422269364,0.293325614,0.086039916,0.527779494,0.263042667,0.069191445,0.261495642,0.117303546,0.013760122,8.27174432,42.23890769,1784.125323,-0.669535765,36.23852434,1313.230646,0.012002837,2.737308806,7.492859498,4.831246853,2.73298049,7.469182968,2749.820569,982.5022573,965310.6856,2500.560413,584.3546489,341470.3556,18.90063587,8.135854586,66.19212985,5676.132344,1775.02147,3150701.22,2.694325741,3.498507562,12.23955516,0.001847167,0.055645316,0.003096401,0.145777463,0.088269907,0.007791576,1.36E-06,0.131658405,0.017333934,0.000141969,0.095362484,0.009094004,4.221387755,1.601395952,2.564468994\r\n2,Absolutely - Story of A Girl.mp3,sad,1,129.1992188,159877,1268.865079,0.425320782,0.289704251,0.083928553,0.488411633,0.275777219,0.076053074,0.259517351,0.126428153,0.015984078,10.80452964,52.99969193,2808.967345,2.324514489,23.12582986,534.8040068,0.012688937,2.348498004,5.515442877,6.097115994,1.973801136,3.895890951,3355.923318,825.28016,681087.3424,2839.385726,282.88856,80025.93736,20.00986003,6.837942054,46.75745153,6770.39656,1060.310894,1124259.193,3.068247328,3.49566783,12.21969358,0.007194285,0.071367416,0.005093308,0.174273512,0.092381368,0.008534317,-3.00E-06,0.169203728,0.028629901,5.56E-06,0.099144682,0.009829667,3.24614966,1.885734819,3.555995808\r\n3,Ace - Futureland.mp3,happy,2,99.38401442,121594,1253.546392,0.487376803,0.268670374,0.07218377,0.44053569,0.303527672,0.092129048,0.238127465,0.163182854,0.026628644,16.9294511,91.41765116,8357.186944,7.213594738,25.7773076,664.4695872,0.00664681,1.732102757,3.00017996,7.45171833,2.472208023,6.111813068,2884.310298,1000.080209,1000160.423,2778.911699,549.9270779,302419.791,18.09058591,6.242264389,38.9658647,6208.412459,2138.990993,4575282.467,3.751397711,4.212932682,17.74880178,-0.019074338,0.083522546,0.006976016,0.136353862,0.078736655,0.006199461,1.87E-05,0.206915513,0.042814031,-7.70E-05,0.115424842,0.013322894,3.989188209,1.766115307,3.119163277\r\n4,Alan Walker - Faded.mp3,sad,1,89.10290948,113611,1291.034091,0.292934478,0.29569479,0.087435409,0.406712844,0.288187825,0.083052223,0.226562938,0.178892617,0.032002568,9.843200113,75.09972899,5639.969295,2.453629006,45.42074375,2063.043963,0.005337784,2.206856993,4.870217787,5.226909637,2.562407494,6.565932274,1927.612816,1035.043044,1071314.103,2174.151882,835.8544316,698652.6308,21.74016032,5.647970149,31.8995668,4051.608834,2482.790129,6164246.825,2.098193939,2.550848768,6.506829439,-0.002768046,0.092026768,0.008468926,0.084333957,0.049829604,0.002482989,-2.03E-05,0.184177279,0.033921268,-3.26E-06,0.055471476,0.003077085,3.423782313,1.922332842,3.695363555\r\n5,Alan Walker - Force [Instrumental].mp3,relax,3,198.7680288,252770,1404.277778,0.286669482,0.300048682,0.090029212,0.37287328,0.290104642,0.084160703,0.217227015,0.190120375,0.036145757,5.886977146,72.02582901,5187.720045,-0.764524421,45.97753844,2113.934041,0.009725682,2.007709816,4.030898707,3.845882177,2.61906004,6.859476089,2545.374828,1062.659044,1129244.244,2371.939368,908.3368211,825075.7805,21.94492058,6.550948614,42.91492774,5321.330323,2555.896372,6532606.266,1.512831214,1.997955863,3.99182763,-0.006246197,0.091778097,0.008423219,0.117507415,0.054558505,0.00297663,1.40E-05,0.147810981,0.021848086,0.000306882,0.048204396,0.002323664,9.637442177,7.344525154,53.94204973\r\n6,All American Rejects - Stab my back.mp3,angry,4,135.9991776,173919,1288.288889,0.402927771,0.293648941,0.086229701,0.511188687,0.267794641,0.07171397,0.261786125,0.121660832,0.014801358,16.47518906,86.45292344,7474.107971,6.878092703,23.32246751,543.9374908,0.005724838,2.711800544,7.353862193,7.291646957,2.602593184,6.773491859,2794.75673,680.0011967,462401.6275,2697.979678,303.4514805,92082.80102,19.93235094,6.390375704,40.83690164,5915.443397,1193.495011,1424430.34,3.739061441,4.257751352,18.12844658,0.009007424,0.059399822,0.003528339,0.132281324,0.057834691,0.003344851,-2.44E-06,0.196422249,0.038581699,-0.000103147,0.135027885,0.018232528,2.917587302,1.705446393,2.908547399\r\n7,Apparat - You Dont Know Me.mp3,relax,3,161.4990234,204713,1271.509317,0.291769794,0.303724422,0.092248524,0.439677776,0.283746334,0.080511982,0.237816404,0.163635849,0.026776691,6.974083403,66.83671905,4467.147014,-3.754776661,48.89451485,2390.673583,0.012782354,1.440528756,2.075123096,4.111234188,2.577727079,6.644677162,1722.14567,375.4770208,140982.9932,2280.988092,408.1874201,166616.9699,23.76722385,8.232435012,67.77298623,3775.777168,1272.897506,1620268.061,1.534552304,2.227213372,4.960479402,0.007724619,0.076847818,0.005905587,0.062141537,0.025718884,0.000661461,-1.92E-05,0.157182351,0.024706293,-1.63E-05,0.039745864,0.001579734,1.37229932,0.69298631,0.480230026\r\n8,B.O.B - Soo Good.mp3,happy,2,86.1328125,108756,1279.482353,0.421205622,0.294016598,0.08644576,0.507742092,0.279095371,0.077894226,0.254880185,0.13553385,0.018369425,20.03077151,147.5136999,21760.29165,4.95562076,29.67170653,880.4101682,0.013385615,2.746273852,7.542020071,7.625406742,3.578936338,12.80878448,2708.439843,953.862517,909853.7014,2623.42318,734.9657335,540174.6295,19.42979135,6.589739629,43.42466838,5880.66444,2082.871221,4338352.525,3.594682842,4.352430408,18.94365045,-0.00407983,0.070444611,0.004962443,0.11792748,0.063363736,0.004014963,-2.28E-06,0.199292004,0.039717302,-0.00010311,0.165504798,0.027391838,5.263963719,2.912277593,8.481360778\r\n9,Billy Talent - Fallen Leaves.mp3,happy,2,123.046875,106506,1054.514851,0.408958424,0.289546437,0.083837139,0.522171574,0.279307258,0.078012544,0.259815229,0.125814864,0.01582938,13.57571267,81.45232998,6634.482058,4.532875529,26.8421505,720.5010435,0.010696634,2.909786962,8.466860165,6.407421589,2.945688963,8.677083015,2862.122038,629.6575466,396468.626,2583.918199,409.17947,167427.8387,19.68229392,7.402166278,54.7920656,5834.710552,1155.844456,1335976.406,3.299955133,3.889061712,15.124801,0.016530577,0.066490072,0.00442093,0.146345676,0.058125786,0.003378607,-1.90E-05,0.177508309,0.031509198,-0.000155616,0.122583307,0.015026667,2.402104308,1.407299272,1.980491241\r\n10,Billy Talent - Red Flag.mp3,happy,2,92.28515625,102169,1201.988235,0.472775697,0.291974877,0.085249329,0.575409757,0.277486308,0.076998651,0.266335384,0.111349883,0.012398796,16.15352587,109.9906259,12097.93778,6.342557104,22.41891883,502.6079216,0.010971336,2.849928707,8.122093634,7.119541168,2.820424318,7.95479393,3066.501669,790.8160532,625390.03,2778.984692,298.3711979,89025.37171,18.74509054,6.857769624,47.02900422,6338.161674,1135.978382,1290446.884,3.510186788,4.073010511,16.58941462,0.005264146,0.06428996,0.004133199,0.158338045,0.079177701,0.006269108,9.09E-06,0.163210422,0.02663764,0.000865846,0.161110818,0.025956694,1.733369615,1.053179817,1.109187727\r\n11,Billy Talent - Viking Death March.mp3,angry,4,143.5546875,183008,1279.776224,0.466557562,0.282420875,0.079761551,0.584324635,0.247357228,0.061185598,0.268748724,0.10539192,0.011107457,17.10669841,93.67338601,8774.703246,6.364959232,26.87810473,722.4325138,0.013899837,2.4043216,5.780762356,7.347826958,2.754977942,7.589903355,2586.263822,584.5253864,341669.9274,2423.44088,399.0401254,159233.0217,19.00914569,7.564149979,57.21636491,5332.755254,1081.926165,1170564.226,3.989431764,4.433234437,19.65356757,0.004083563,0.050217035,0.002521751,0.13435633,0.05160216,0.002662783,-9.60E-06,0.182128429,0.033170767,-0.000246938,0.139302582,0.01940521,6.849886621,3.006898956,9.041441332\r\n12,Black Eyed Peas - Lets Get It Started.mp3,happy,2,103.359375,129354,1306.606061,0.402474583,0.312443126,0.097620707,0.466007204,0.296977642,0.08819572,0.260350916,0.124702582,0.015550734,12.99421651,101.599269,10322.41146,0.792898904,41.49389062,1721.742959,0.011871489,3.554022516,12.63107604,5.909911633,3.422062159,11.7105093,2644.788328,1153.020189,1329455.556,2635.541868,503.5351806,253547.6781,19.97006123,6.920022783,47.88671532,5501.200068,2037.249226,4150384.408,2.604742209,3.678209832,13.52922757,-0.003095443,0.071901439,0.005169817,0.116087733,0.096375337,0.009288206,2.30E-06,0.14649725,0.021461442,-6.78E-05,0.144702166,0.020938715,4.447782313,2.376100069,5.64585154\r\n13,Blue Stahli - Ultranumb.mp3,angry,4,123.046875,147270,1248.050847,0.535376136,0.263895309,0.069640734,0.554991266,0.262331103,0.068817608,0.265375858,0.113617724,0.012908987,10.95176986,71.0129774,5042.84296,3.435042903,31.84942408,1014.385814,0.013709524,2.150124998,4.623037509,5.561200142,3.0498631,9.301665306,2938.003397,690.8869368,477324.7595,2600.273189,502.5470182,252553.5055,17.93798924,7.466678433,55.75128682,5979.384677,1419.856955,2015993.771,2.958585796,3.678379398,13.530475,-0.006745901,0.057526558,0.003309305,0.146447716,0.065800428,0.004329696,0.000169703,0.166842565,0.02783644,0.001528302,0.095579937,0.009135525,2.813097506,1.338913305,1.792688838\r\n14,Blue Stahli vs Celldweller - Frozen.mp3,relax,3,129.1992188,159858,1258.724409,0.413806951,0.315671369,0.099648413,0.576091406,0.265046685,0.070249745,0.272654286,0.094831291,0.008992974,2.695430781,22.19727107,492.7188431,-6.422768463,51.17730624,2619.116674,0.00982906,3.39416723,11.52037119,2.597597361,1.560394883,2.434832096,2041.541831,941.4555868,886338.6219,2102.412011,762.3423281,581165.8253,18.41992234,7.353510188,54.07411208,4276.482474,2096.566806,4395592.37,1.235656873,1.626491587,2.645474881,0.001037427,0.051274494,0.002629074,0.089129091,0.051724523,0.002675426,0.000409699,0.061693363,0.003806071,0.000708763,0.066476807,0.004419166,2.972154195,1.773205029,3.144256076\r\n15,Bonnie Tyler - Total Eclipse of the Heart.mp3,sad,1,129.1992188,162877,1282.496063,0.271930177,0.302700028,0.091627307,0.421102029,0.282977046,0.080076008,0.23802667,0.163329843,0.026676638,2.321361634,22.96136834,527.224436,-9.634292097,58.87850751,3466.678646,0.011873367,2.576473109,6.638213679,2.272249937,1.917987227,3.678674936,2170.832467,611.3881309,373795.4466,1953.28201,406.1581802,164964.4673,23.70792469,6.938499402,48.14277395,3939.21368,1221.556987,1492201.472,0.998802059,1.576373648,2.484953877,-0.002788675,0.080037797,0.006406049,0.118865872,0.050058968,0.0025059,4.05E-06,0.083132863,0.006911073,-2.22E-05,0.044358771,0.001967701,4.288725624,2.341742499,5.483757933\r\n16,Breaking Benjamin - Breath.mp3,happy,2,92.28515625,113335,1259.277778,0.396369489,0.284254401,0.080800565,0.455142365,0.278811698,0.077735963,0.242566925,0.156507572,0.02449462,14.01458824,73.58552948,5414.830149,5.870747545,31.29247474,979.2189753,0.005343709,2.13405156,4.554176062,6.657815456,2.263454914,5.123228073,2297.396476,706.1790814,498688.895,2435.428403,488.8099214,238935.1392,20.47385432,6.463104091,41.77171449,4924.782721,1564.307282,2447057.274,3.217956805,3.651106068,13.33057552,-0.006948982,0.078250439,0.006123131,0.098866749,0.044492392,0.001979573,2.30E-06,0.197886735,0.03915916,-3.08E-05,0.098269477,0.00965689,2.775945578,1.819598304,3.310937988\r\n17,Breaking Benjamin - I Will Not Bow.mp3,angry,4,107.6660156,131015,1259.759615,0.454749297,0.276858766,0.076650777,0.519307059,0.279829394,0.07830449,0.256522975,0.132398251,0.017529297,22.7630754,130.2865158,16974.57619,6.011973516,30.30760478,918.5509072,0.012180728,2.02058726,4.082772874,8.239292145,3.566739082,12.72162819,2736.437967,700.7225646,491012.1125,2584.263729,446.1937209,199088.8366,19.83836196,6.974203171,48.63950988,5698.290543,1356.499374,1840090.551,3.932229778,4.604011199,21.19691912,0.013427586,0.074149712,0.00549818,0.126941976,0.0630339,0.003973273,6.51E-06,0.242872566,0.058987081,2.51E-05,0.129716977,0.016826494,6.032544218,2.300540956,5.292488691\r\n18,Breaking Benjamin - Into the Nothing.mp3,angry,4,95.703125,117594,1264.451613,0.467404991,0.276425128,0.076410851,0.467367862,0.277421652,0.076962773,0.249772923,0.144730163,0.02094682,25.05559995,116.2035881,13503.2739,8.708448371,23.51670469,553.0353997,0.013760307,2.141404861,4.585614781,9.290811539,1.329018354,1.76628983,2576.623891,758.5768228,575438.7961,2630.615574,378.470166,143239.6666,19.63944687,7.326305717,53.67475546,5630.645119,1464.339782,2144290.997,4.380989291,4.554014299,20.73904624,0.000707387,0.073122949,0.005346966,0.107878221,0.055249994,0.003052562,8.38E-06,0.26386112,0.069622695,0.000203638,0.125312135,0.015703131,5.979138322,3.538811743,12.52318855\r\n19,Breaking Benjamin - The Diary of Jane.mp3,sad,1,83.35433468,97869,1223.3625,0.448234046,0.290374201,0.084317177,0.496579418,0.28327459,0.080244493,0.247830579,0.148031543,0.021913338,3.136189496,16.41105926,269.3228661,0.100834315,40.2192699,1617.589671,0.012330392,2.012192377,4.048918163,3.206317663,1.156541944,1.337589145,2559.494232,886.7918066,786399.7083,2413.081282,649.974529,422466.8884,20.57333583,8.058157569,64.93390341,5248.909927,1843.138435,3397159.29,1.680687013,1.964607174,3.859681347,-0.028696992,0.074541635,0.005556455,0.131191384,0.061219679,0.003747849,-6.34E-07,0.088962898,0.007914397,3.73E-05,0.054132815,0.002930362,3.646693878,1.759200449,3.094786221\r\n20,Buckcherry vs The Prodigy - Crazy Bitch vs Girls.mp3,happy,2,123.046875,138193,1191.318966,0.484846595,0.298187343,0.088915691,0.528964057,0.282039846,0.079546475,0.262262598,0.120630275,0.014551663,22.82086316,178.0462646,31700.47235,5.838676459,31.76448503,1008.98251,0.004356527,4.43373736,19.65802698,8.748059273,3.853826761,14.85198116,2611.001127,891.9444653,795564.9292,2558.014327,489.432179,239543.8579,18.53984543,6.834016124,46.70377639,5458.266995,1732.339606,3001000.511,4.057726691,4.863786848,23.65642251,0.007551954,0.052077383,0.002712054,0.108621792,0.071305098,0.005084417,0.069523379,0.194745436,0.037925787,0.009843239,0.186252549,0.034690011,2.142040816,1.142904826,1.306231441\r\n21,Celldweller - Louder than Words.mp3,relax,3,129.1992188,163073,1274.007813,0.497176541,0.277366145,0.076931978,0.459451068,0.282600434,0.079863006,0.244975362,0.1527102,0.023320405,14.16715445,82.89102642,6870.92226,7.249865721,32.62323038,1064.27516,0.013239201,2.362641172,5.582073307,6.733174801,2.144689322,4.599691868,2222.871484,872.0314977,760438.933,2365.303478,595.8328373,355016.77,18.73737298,7.624103453,58.12695347,4788.258546,1821.102116,3316412.915,3.23242565,3.741318874,13.99746691,0.01230219,0.080442594,0.006471011,0.088543493,0.058361267,0.003406037,7.76E-05,0.188289493,0.035452932,0.000102256,0.10894613,0.011869259,4.06000907,2.704972985,7.316878851\r\n22,Dangerkids - Cut Me Out.mp3,happy,2,135.9991776,175185,1269.456522,0.3958758,0.287968708,0.082925977,0.413221524,0.279513041,0.07812754,0.236254215,0.16588333,0.027517279,16.43499268,86.67369702,7512.329755,6.160606666,33.09131347,1095.035027,0.011221741,2.096554143,4.395539274,7.195658684,2.734534979,7.477682114,2433.756941,900.8447633,811521.2876,2370.158518,718.7005028,516530.4127,19.40367777,6.811914725,46.40218222,5082.994264,1952.464154,3812116.271,3.758330857,4.382051782,19.20237782,-0.008157792,0.086879214,0.007547998,0.110705113,0.052257411,0.002730837,5.05E-06,0.208215848,0.043353837,0.000171728,0.111212038,0.012368117,2.129269841,1.171310353,1.371967943\r\n23,Data - One in A Million.mp3,happy,2,123.046875,153383,1369.491071,0.386756091,0.306088936,0.093690437,0.563429303,0.266463113,0.071002591,0.264697406,0.115189482,0.013268617,21.63702725,141.882844,20130.74142,2.7213725,29.09887687,846.7446352,0.011374116,2.613571113,6.830753964,8.071249962,3.845243692,14.78589821,2580.425996,878.7271091,772161.3323,2501.706637,385.0069165,148230.3257,19.56973134,6.529178752,42.63017518,5319.538667,1592.881162,2537270.395,4.031660511,4.928140297,24.28656678,0.003895271,0.061088764,0.003731837,0.131912657,0.084198664,0.007089415,-7.76E-05,0.201241747,0.040498242,9.13E-05,0.187978268,0.035335828,5.326657596,2.338082253,5.46662862\r\n24,Demi Lovato - Heart Attack.mp3,sad,1,86.1328125,102981,1240.73494,0.328519301,0.313138987,0.098056025,0.465974507,0.298777519,0.089268006,0.252162857,0.140524826,0.019747227,3.165634164,25.71299902,661.1583187,-2.545148752,33.94254424,1152.09631,0.003179118,2.628647993,6.909790272,3.132388115,1.411688805,1.992865443,3169.081882,832.4739737,693012.9169,2819.827353,376.182783,141513.4862,20.32481925,6.407512786,41.0562201,6570.801934,1521.90087,2316182.257,1.372887568,1.641471213,2.694427743,-0.00104019,0.07577384,0.005741675,0.152663665,0.086358972,0.007457872,-2.49E-07,0.087481767,0.00765306,-9.92E-05,0.060471952,0.003656857,1.791419501,1.035939872,1.073171418\r\n25,Escape The Fate - You're So Beautiful.mp3,happy,2,95.703125,122044,1341.142857,0.421849818,0.306647529,0.094032707,0.550773026,0.257694223,0.066406313,0.267766004,0.10786427,0.011634701,10.59940922,57.23674689,3276.045195,4.597677427,24.8762513,618.8278786,0.011206009,2.085952305,4.351197018,6.117223263,1.803445101,3.252414227,3068.835651,616.8225552,380470.0647,2657.643177,251.3394521,63171.52016,19.07042958,6.990074181,48.86113706,6186.387592,962.0405944,925522.1052,3.266151421,3.587866795,12.87278814,0.011968534,0.053901292,0.002905349,0.156901735,0.064431478,0.004151415,2.83E-06,0.155514091,0.024184631,1.07E-06,0.109294571,0.011945303,3.792979592,1.640983536,2.692826965\r\n26,Evanescence - Bring me to Life.mp3,sad,1,95.703125,107784,1298.60241,0.340195852,0.302053439,0.09123628,0.493420379,0.278402829,0.077508135,0.247131189,0.149196208,0.022259509,6.033988021,37.68174366,1419.913805,4.168183867,46.89909685,2199.525285,-0.000221827,1.781880068,3.175096577,4.312673092,1.545769453,2.389403105,1705.036592,908.744262,825816.1337,1994.561724,613.618628,376527.8206,19.9782589,7.375417855,54.39678853,3353.075558,1862.625881,3469375.171,1.890227812,2.345068729,5.499347344,0.011950872,0.058401508,0.003410736,0.078947557,0.062552936,0.00391287,-7.39E-05,0.132372186,0.017522395,-0.00062404,0.05609706,0.00314688,11.03760544,5.605050202,31.41658777\r\n27,Evans Blue- Cold But Im still here.mp3,sad,1,135.9991776,179373,1290.453237,0.433761231,0.279999101,0.078399497,0.479192749,0.280021093,0.078411813,0.250880037,0.142802452,0.02039254,3.142744341,14.34181315,205.6876045,1.069658741,43.62572604,1903.203973,0.008757593,2.286287253,5.227109403,3.181661844,1.008893371,1.017865777,1954.530726,697.8159715,486947.1301,2135.535296,622.1728452,387099.0493,23.03874562,13.71419195,188.0790609,4184.916361,1642.931228,2699223.019,1.711025023,1.93860204,3.758177871,-0.0135201,0.082926099,0.006876738,0.095124897,0.039668243,0.001573569,-0.001536076,0.084541276,0.007147227,-0.003169537,0.051830992,0.002686452,3.145142857,2.093591192,4.38312408\r\n28,Florida - Right Round.mp3,happy,2,123.046875,127201,1156.372727,0.400897081,0.299637596,0.089782689,0.488034057,0.287805823,0.082832192,0.249344854,0.145466413,0.021160477,7.015688709,67.06943446,4498.309039,0.866641315,37.26856338,1388.945816,0.011124304,2.899072092,8.404618994,4.059482098,2.848655462,8.1148386,2700.535256,821.2123686,674389.7544,2657.727288,434.5367614,188822.197,19.64153164,7.640903884,58.38341216,5815.831499,1600.781178,2562500.381,1.926409324,2.747631781,7.549480405,0.007906402,0.069134937,0.00477964,0.12699224,0.067713724,0.004585148,4.52E-05,0.101845041,0.010372412,0.000129788,0.12085668,0.014606337,12.78606803,10.08795272,101.7667901\r\n29,Globus - Take me away.mp3,sad,1,151.9990809,191920,1279.466667,0.288229975,0.309679581,0.095901443,0.379603551,0.293539461,0.086165415,0.215402843,0.192184674,0.036934949,1.067194318,10.70415438,114.5789209,-12.24285386,91.13048051,8304.764477,0.004661522,1.433142239,2.053896679,1.487624168,1.112414122,1.237465262,695.7151403,337.572982,113955.5182,1021.81088,485.4976063,235707.9258,24.37245403,6.548069022,42.87720792,1170.934586,1006.46382,1012969.421,0.456029814,0.663765386,0.440584487,0.005476558,0.08754497,0.007664122,0.031078043,0.0116779,0.000136373,-5.70E-06,0.06254603,0.003912006,-1.30E-06,0.011289089,0.000127444,2.01200907,1.155837822,1.33596107\r\n30,Globus - Thousand Deaths.mp3,sad,1,135.9991776,178652,1258.112676,0.414298481,0.283215475,0.080211005,0.389382051,0.283668387,0.080467754,0.222889189,0.183449565,0.033653743,9.609018462,40.74106775,1659.834601,6.108056515,31.45654496,989.5142208,0.013958731,1.417640777,2.009705372,5.701161385,1.479744792,2.189644575,1989.337314,437.9278757,191780.8243,2089.410023,373.3703169,139405.3936,19.1103805,7.615343232,57.99345254,3987.117557,954.8532387,911744.7074,3.271087252,3.508646364,12.31059931,0.046769898,0.088471723,0.007827246,0.102124666,0.034928811,0.001220022,0.000143525,0.155091599,0.024053404,0.001162905,0.079369351,0.006299493,9.32861678,5.037220502,25.37359038\r\n31,Imagine Dragons - Radioactive.mp3,happy,2,135.9991776,171634,1271.362963,0.365361971,0.297269026,0.088368874,0.488452639,0.268399763,0.072038433,0.253088905,0.138850061,0.01927934,15.97752145,139.1850681,19372.48319,0.941936879,40.01436931,1601.149752,0.013850195,2.368875103,5.611569253,6.028670788,4.282248974,18.33765602,1830.434792,743.156604,552281.7381,2063.199063,476.4348209,226990.1386,20.85932781,7.347844328,53.99081627,3765.685563,1575.051297,2480786.589,2.714162701,3.844959104,14.78371051,-0.001253918,0.067217617,0.004518208,0.081883103,0.050199679,0.002520008,7.33E-06,0.19862777,0.039452989,8.09E-05,0.10788808,0.011639838,4.203972789,2.251371587,5.068674023\r\n32,Imagine Dragons - Warrior.mp3,angry,4,78.30255682,96895,1274.934211,0.349990664,0.285689661,0.081618582,0.506642854,0.26129877,0.068277047,0.257210757,0.131057087,0.01717596,8.244193189,45.07454532,2031.714636,1.908302944,37.44426431,1402.07293,0.005503734,1.767357853,3.123553782,4.815413475,2.383156538,5.679435253,1930.362907,546.0552709,298176.3588,2176.645657,427.6114919,182851.588,20.02704751,6.916516372,47.83819872,3936.630362,1333.65457,1778634.512,2.443521917,3.014163683,9.085182709,0.015831622,0.06479114,0.004197892,0.089114541,0.034039781,0.001158707,1.64E-06,0.149282426,0.022285243,-3.35E-05,0.067395568,0.004542162,2.363791383,1.199880906,1.439714188\r\n33,K'naan - Waving Flag.mp3,happy,2,75.99954044,92219,1263.273973,0.333718314,0.310685262,0.096525332,0.526373964,0.288186018,0.083051181,0.256453838,0.132532118,0.017564762,7.665881763,58.61058842,3435.201075,0.657475056,36.21784053,1311.731972,0.01091064,2.760303387,7.61927479,4.516118526,2.565011024,6.57928133,2719.051263,832.9341011,693779.2168,2807.989342,417.317302,174153.7306,19.45091511,6.309187072,39.80584151,6133.112914,1616.907024,2614388.324,2.007062694,2.613242091,6.829034225,0.019607278,0.067454888,0.004550162,0.115158412,0.064214184,0.004123461,-6.42E-06,0.1091813,0.011920555,0.000117855,0.110110119,0.012124239,2.964027211,1.540749851,2.373910102\r\n34,Katy Perry - Firework.mp3,happy,2,123.046875,149489,1245.741667,0.319271761,0.30490407,0.092966492,0.569835431,0.268900072,0.072307249,0.266542322,0.110853615,0.012288524,6.33452847,52.46348492,2752.41725,-1.78458196,29.99545366,899.7272405,0.011549971,2.631254261,6.923498987,4.338088989,2.197864294,4.830607414,2828.94605,806.4568169,650372.5975,2534.681964,346.703843,120203.5548,21.2542257,6.699803652,44.88736897,5649.520005,1382.805201,1912150.224,1.930650675,2.326983599,5.41485267,0.006470377,0.054561037,0.002976907,0.145506679,0.072876649,0.005311006,-3.64E-06,0.123941764,0.015361561,-2.05E-05,0.097580649,0.009521983,4.987646259,2.732255666,7.465221022\r\n35,Katy Perry - I Kissed a Girl.mp3,happy,2,129.1992188,166941,1284.161538,0.424609873,0.296794544,0.088087002,0.490908643,0.282824218,0.079989538,0.252563492,0.139803491,0.019545016,1.153504436,8.226192745,67.67024708,0.07277011,44.70453179,1998.495162,-0.000554184,3.10420526,9.636090293,1.90388,0.702271402,0.493185133,2586.705161,959.9057074,921418.967,2606.904154,479.561531,229979.262,19.27737467,6.677743707,44.59226102,5426.754685,1876.585012,3521571.306,0.855481724,0.987174264,0.974513027,-0.000464537,0.07007857,0.004911006,0.109073792,0.063048166,0.003975071,-1.33E-06,0.053292528,0.002840093,2.33E-05,0.035375156,0.001251401,2.426485261,1.529056493,2.338013758\r\n36,Kesha - Dancing With Tears In My Eyes.mp3,happy,2,117.4538352,153190,1287.310924,0.404095201,0.312037854,0.097367622,0.577615568,0.272759526,0.074397759,0.269704098,0.102922461,0.010593033,9.673783125,70.2800849,4939.290333,2.968818018,34.10427065,1163.101277,0.011664829,3.533767499,12.48751274,5.34232235,2.381651163,5.672262669,2586.532187,1009.867538,1019832.444,2561.445742,592.319355,350842.2183,19.65683227,7.477825911,55.91788036,5468.846097,1893.07787,3583743.822,2.417972435,2.938257429,8.633356722,0.007903469,0.054098024,0.002926596,0.11707091,0.083681721,0.00700263,-1.06E-05,0.127444252,0.016242037,-2.61E-05,0.13391684,0.017933721,5.310403628,2.329727607,5.427630722\r\n37,Laura Jansen - Use Somebody.mp3,sad,1,129.1992188,152569,1250.565574,0.281130342,0.295547935,0.087348582,0.398251896,0.280725999,0.078807087,0.229530481,0.17506882,0.030649092,3.950106138,26.72243843,714.0887156,-7.668213253,65.72611657,4319.922399,0.008448898,2.532107626,6.41156903,3.215786219,1.818070412,3.305379868,1317.696272,934.5078528,873304.9269,1383.170278,807.8206468,652574.1975,24.80586969,5.856771171,34.30176855,2423.514512,1809.438438,3274067.462,1.181530762,1.59207335,2.534697551,-0.006783966,0.096021452,0.009220119,0.068756576,0.053719638,0.002885799,-1.93E-06,0.119287215,0.01422944,-4.08E-05,0.035870176,0.00128667,9.111510204,5.619955321,31.58389781\r\n38,League of Legends - Burning Brighter.mp3,sad,1,151.9990809,196235,1344.075342,0.324089405,0.295542356,0.087345284,0.359859827,0.301359738,0.090817692,0.208220243,0.199944152,0.039977664,8.249232477,49.29405197,2429.903559,3.319539251,38.53048236,1484.598071,0.012989594,1.771574072,3.138474692,4.933689117,2.334563255,5.450185299,2212.502062,689.9593225,476043.8666,2425.560799,505.7492592,255782.3132,22.9208803,5.923006278,35.08200337,4675.367562,1626.425913,2645261.251,2.186471113,2.739766483,7.506320381,-0.020125905,0.103971676,0.010810109,0.095594849,0.038878603,0.001511546,-3.17E-05,0.167537481,0.028068809,-0.000231623,0.061699793,0.003806865,12.83831293,5.015746161,25.15770955\r\n39,League of Legends - Get Jinxed.mp3,happy,2,89.10290948,109445,1257.988506,0.452530114,0.284025379,0.080670416,0.579252144,0.252445047,0.063728502,0.268786918,0.105294473,0.011086926,4.549776993,27.4669709,754.4344902,0.744114977,46.07069468,2122.508909,0.013679558,1.987664549,3.95081036,3.462542534,2.189370394,4.79334259,2727.59234,912.841228,833279.1075,2533.286186,362.2478199,131223.4831,19.03039829,7.429052799,55.19082549,5514.508321,1462.90677,2140096.217,1.966408862,2.61805056,6.854188736,0.002897829,0.05543358,0.003072882,0.136738402,0.079419146,0.006307401,1.29E-05,0.09932667,0.009865787,7.62E-05,0.068299763,0.004664857,2.449705215,1.419544668,2.015107065\r\n40,Linkin Park - In the End.mp3,angry,4,103.359375,114020,1187.708333,0.392283811,0.290522472,0.084403307,0.512753815,0.2659971,0.070754457,0.257752831,0.129987736,0.016896812,3.010661633,17.40019048,302.7666289,-2.424366114,44.83900896,2010.536724,0.013677663,2.488881017,6.194528715,2.874552727,1.709442377,2.92219305,2232.005855,682.1114554,465276.0376,2143.177842,490.301717,240395.7737,20.14599599,7.283769336,53.05329574,4396.340083,1397.968996,1954317.313,1.602999383,2.125786632,4.518968803,-0.006133187,0.067674562,0.004579846,0.117040298,0.051461771,0.002648314,4.05E-07,0.078016989,0.00608665,5.24E-05,0.060906451,0.003709596,2.121142857,1.270160703,1.613308212\r\n41,Linkin Park - Roads Untraveled.mp3,sad,1,99.38401442,124734,1272.795918,0.298325594,0.289053865,0.083552137,0.481603022,0.272188103,0.074086364,0.247894021,0.147925278,0.021881888,1.081165605,17.60949215,310.0942136,-8.400634075,47.73519719,2278.64905,0.000275448,3.317845269,11.00809723,1.753431559,1.183774471,1.401321888,3639.48644,1020.790592,1042013.433,2769.126829,313.9421788,98559.69166,22.84016437,8.611410023,74.15638258,7008.636786,1271.428472,1616530.359,0.700217137,1.002790473,1.005588732,0.011720811,0.08627112,0.007442706,0.291053607,0.134688175,0.018140904,-3.25E-05,0.058694497,0.003445044,-6.53E-05,0.035143379,0.001235057,1.926095238,1.015842498,1.03193598\r\n42,Machinae Supremacy - Death from above.mp3,relax,3,99.38401442,122026,1271.104167,0.474093998,0.284134087,0.080732179,0.487018893,0.283986889,0.080648553,0.253747265,0.13764323,0.018945659,22.11286794,161.7201594,26153.40997,7.431293225,24.92652444,621.3316206,0.012522681,1.947079132,3.791117148,8.146737099,2.912524223,8.482796669,2258.78355,303.9983155,92414.97585,2481.360251,212.1562954,45010.29366,18.51735426,6.614681769,43.7540149,4966.319969,724.2450957,524530.9587,3.584976074,3.938301352,15.51021754,-0.006993686,0.071196245,0.005068905,0.077111779,0.030267295,0.000916109,-0.000689172,0.248119414,0.061563242,-0.005631799,0.114827216,0.013185289,1.989950113,1.031266651,1.063510906\r\n43,Machinae Supremacy - Edge and Pearl.mp3,angry,4,123.046875,149078,1433.442308,0.422980605,0.306254246,0.093791663,0.500246482,0.279650431,0.078204364,0.246920246,0.149545061,0.022363725,13.47024773,100.5660779,10113.53602,5.567504793,56.59775283,3203.305626,0.013064685,1.542266813,2.378586922,5.861894131,3.677881002,13.52680874,1629.004255,990.4584443,981007.9299,1550.165576,860.8568074,741074.4428,21.41785613,7.300156228,53.29228096,3168.214176,1961.646888,3848058.512,2.781511369,4.105780732,16.85743542,-0.002884028,0.060380059,0.003645752,0.080054694,0.040728595,0.001658818,3.96E-07,0.206255674,0.042541403,-1.82E-05,0.074160367,0.00549976,2.92339229,1.844253577,3.401271257\r\n44,Magic System - Magic in the Air.mp3,happy,2,129.1992188,162668,1280.850394,0.35159583,0.295835097,0.087518405,0.473733878,0.288565217,0.083269884,0.255017751,0.13527483,0.01829928,12.35239422,89.91046992,8083.892602,-1.617058777,34.84891623,1214.446963,0.013001072,2.419706467,5.854979387,5.881638527,3.426352739,11.73989296,3005.843303,595.1133473,354159.8962,2651.491055,294.72184,86860.96298,20.41536147,6.657935564,44.32810598,6064.892493,1087.293559,1182207.283,2.967544341,3.886427993,15.10432255,-0.006704283,0.079333349,0.00629378,0.147025377,0.064189879,0.004120341,1.14E-05,0.182228699,0.033207301,0.000204679,0.106646612,0.0113735,2.777106576,1.531538642,2.345610612\r\n45,Miley Cyrus - Lets get Crazy.mp3,happy,2,123.046875,159253,1349.601695,0.405164263,0.303806267,0.092298248,0.496957256,0.279475626,0.078106626,0.255399621,0.125242311,0.015685636,4.930700428,34.03069389,1158.088126,1.4004277,45.2771528,2050.020566,0.013095444,2.877827481,8.28189101,3.726270437,1.870782256,3.499826193,2347.772477,900.1718801,810309.4137,2389.268734,674.0832192,454388.1864,19.64983974,8.874479652,78.75638909,5039.165362,1758.716899,3093085.13,1.677532321,2.156784205,4.651718109,0.007444439,0.065025353,0.004228297,0.096643218,0.06732779,0.004533031,-4.07E-06,0.111580588,0.012450228,-0.000156933,0.068321377,0.004667811,7.504689342,1.953757396,3.817167961\r\n46,My Darkest Days - Can't Forget You.mp3,sad,1,161.4990234,192521,1617.823529,0.393048434,0.281240306,0.07909611,0.378933381,0.296526284,0.087927837,0.216558067,0.190881998,0.036435937,8.82812321,52.67126115,2774.261751,4.5621811,43.7035664,1910.001716,0.013436007,1.75952486,3.095927731,4.93493557,2.487243176,6.186378479,1894.498,836.456772,699659.9315,2170.375861,704.6087502,496473.4909,22.07275019,6.822237943,46.54293056,4162.312331,1937.239886,3752898.377,2.264424344,3.007900856,9.047467561,-0.021161244,0.105885988,0.011211842,0.078929984,0.045291714,0.002051339,8.39E-06,0.155775771,0.024266092,-2.58E-06,0.067858286,0.004604747,12.37855782,5.759039815,33.16653959\r\n47,My Darkest Days - Without You.mp3,sad,1,53.83300781,60939,1218.78,0.302876619,0.294142774,0.086519971,0.449049509,0.279090156,0.077891315,0.237334008,0.164334725,0.027005902,3.76066382,23.33594711,544.5664277,-2.519093575,46.02045832,2117.882584,0.013154986,2.188790624,4.790804394,3.196904421,1.894014239,3.587290049,2346.960318,1002.21822,1004441.36,2242.792194,678.4665426,460316.8495,21.98228798,8.130868159,66.11101702,4789.025208,1946.327874,3788192.194,1.550427314,2.101311528,4.415510139,0.000417805,0.081786221,0.006688986,0.122651564,0.076188151,0.005804634,3.19E-05,0.108232871,0.011714354,-2.82E-05,0.048314329,0.002334274,9.582875283,4.32186361,18.67850506\r\n48,One Direction - Best Song Ever.mp3,happy,2,117.4538352,139921,1238.238938,0.427366027,0.296932361,0.088168827,0.489105305,0.281639459,0.079320785,0.257372479,0.130739207,0.01709274,13.1010479,79.53107734,6325.192263,2.95615363,35.64644762,1270.669228,0.013053365,2.487371027,6.187014628,6.082351685,3.643235207,13.27316284,2809.648714,971.8242503,944442.3734,2562.195745,572.0641984,327257.4471,19.29714108,6.882053828,47.36266489,5764.298477,1928.074082,3717469.664,3.236965346,4.391036494,19.2812015,-0.011337214,0.073676882,0.005428283,0.146054483,0.075775601,0.005741942,3.14E-05,0.164838284,0.02717166,3.43E-05,0.133256808,0.017757379,1.604498866,0.729302514,0.531882157\r\n49,One Direction - Live While you are Young.mp3,happy,2,123.046875,157294,1278.813008,0.434535951,0.287642669,0.082738305,0.550407009,0.26704318,0.07131206,0.269047488,0.104626874,0.010946783,10.18983695,67.46123224,4551.017855,2.658188308,38.95854824,1517.768481,0.012054859,3.455914524,11.9433452,5.442199707,3.003162384,9.018984795,2841.189465,749.283597,561425.9087,2616.465831,432.3480737,186924.8568,19.47702097,6.933777727,48.07727357,5930.297474,1428.857956,2041635.057,2.878150144,3.830235549,14.67070436,-0.006083079,0.053504672,0.00286275,0.140441895,0.065349607,0.004270571,-2.38E-06,0.143809974,0.02068131,-0.000156095,0.113732405,0.01293506,4.575492063,2.660985275,7.080842631\r\n50,One Direction - What Makes You Beautiful.mp3,happy,2,123.046875,132280,1284.271845,0.43617543,0.294726051,0.086863445,0.555435686,0.267101533,0.071343229,0.269333931,0.10388728,0.010792567,12.87905681,92.24213506,8508.61148,2.882267828,36.94202628,1364.713306,0.012364478,3.531179086,12.46922574,5.916572094,3.71233058,13.78139782,2884.346751,911.0308955,829977.2926,2655.669441,477.4700006,227977.6014,19.35926151,7.421695705,55.08156713,6093.742319,1679.325354,2820133.646,3.038892807,4.159411832,17.30070679,0.00750701,0.059385017,0.00352658,0.143278612,0.075752293,0.00573841,4.64E-06,0.17067489,0.029129917,4.80E-05,0.120935574,0.014625413,7.668390023,1.669220427,2.786296834\r\n51,One Republic - All The Right Moves.mp3,happy,2,95.703125,120349,1266.831579,0.39231577,0.294440807,0.086695389,0.475705297,0.276610028,0.076513107,0.250507889,0.143454282,0.020579131,13.29545282,70.47615548,4966.888491,3.161842897,36.69732736,1346.693835,0.01307085,2.669300447,7.125164877,6.134161472,2.832911253,8.025385857,2095.777474,767.3214571,588782.2185,2314.282848,626.8083481,392888.7052,19.82196678,6.745833876,45.50627468,4579.355643,1782.595004,3177644.95,3.044778947,3.804292437,14.47264095,0.014226101,0.067596102,0.004569233,0.091014,0.0440178,0.001937567,-1.80E-05,0.170286641,0.02899754,1.36E-05,0.11313235,0.012798929,7.718312925,2.248339181,5.055029072\r\n52,Or4nges - CrowMachi.mp3,relax,3,117.4538352,146814,1299.238938,0.384424402,0.309917105,0.096048612,0.456862183,0.293145891,0.085934514,0.261160536,0.122998,0.015128508,5.13445291,53.2950818,2840.365744,-13.27203965,56.66379334,3210.785476,0.012098868,2.862852847,8.195926424,3.528975725,2.587898493,6.697218895,2360.662846,1002.569254,1005145.109,1906.859101,882.7454921,779239.6038,20.94585508,8.35763291,69.85002785,4402.640045,2373.214248,5632145.869,1.593333927,2.219539354,4.926354943,0.007833285,0.088295963,0.007796177,0.121449568,0.048624319,0.002364324,7.55E-06,0.107253499,0.011503313,2.61E-05,0.087400079,0.007638774,1.789097506,0.987120528,0.974406937\r\n53,Paul Oakenfold - Jump.mp3,happy,2,123.046875,94420,993.8947368,0.472651775,0.256635785,0.065861926,0.387447739,0.267733142,0.071681036,0.234277307,0.168663798,0.028447477,28.52972174,125.341099,15710.39109,10.75737189,23.79599036,566.2491573,0.01368725,1.813475596,3.288693736,9.902039528,2.051474094,4.208546162,2617.439851,481.0017456,231362.6792,2747.401427,268.2809269,71974.65572,17.47676179,6.387220927,40.79659116,5902.160144,941.4170323,886266.0288,5.549079033,5.839680431,34.10186754,0.041546111,0.091430281,0.008359496,0.115567895,0.040717391,0.001657906,6.13E-05,0.244270161,0.059667911,0.001238371,0.151657701,0.02300006,2.680743764,1.118890445,1.251915828\r\n54,Pokemon - Master Quest.mp3,happy,2,151.9990809,105406,949.6036036,0.446547186,0.280551514,0.078709152,0.531885741,0.258466339,0.066804848,0.265974687,0.11220873,0.012590799,7.032434533,27.38431742,749.9008404,2.401471867,30.20031419,912.0589773,-1.62E-18,2.035389232,4.142809325,5.762974262,2.089851618,4.367479324,3557.563607,759.2985749,576534.3259,2684.863035,351.9268832,123852.5311,19.07525808,6.599944577,43.55926842,6668.594563,1255.145344,1575389.836,3.254173101,3.675002069,13.50564021,0.006986982,0.05901747,0.003483062,0.238643133,0.075724306,0.005734171,-0.000132158,0.135042235,0.018236406,-0.00127452,0.119754747,0.014341199,2.953578231,1.495040542,2.235146221\r\n55,Rise Against - Hero Of War.mp3,sad,1,151.9990809,196151,1282.03268,0.319922034,0.300488206,0.090293162,0.428341622,0.290743331,0.084531684,0.235509823,0.166938481,0.027868456,5.722351945,30.12685354,907.6273041,-3.197131131,46.59636978,2171.221677,0.008435165,3.45244784,11.91939609,4.187962055,1.685546875,2.841068268,1985.919642,993.2271416,986500.1548,2240.643917,647.6105107,419399.3735,24.98476635,6.237055311,38.90085896,4083.850306,2101.258001,4415285.185,1.684955486,2.105500214,4.43313115,0.021398733,0.098066749,0.009617087,0.086985302,0.062888118,0.003954915,1.11E-05,0.133877143,0.017923091,-2.28E-05,0.061105367,0.003733866,4.035628118,2.288015202,5.235013564\r\n56,Shakaponk - I'm Picky.mp3,angry,4,117.4538352,110503,1139.206186,0.350081544,0.304619075,0.092792781,0.560780191,0.265961147,0.070735332,0.270397407,0.10108697,0.010218575,1.239403164,6.940108685,48.16510857,-5.868864023,56.54183653,3196.979278,0.013690035,3.986155773,15.88943785,1.826951385,0.991128683,0.982336104,1988.323018,769.5285005,592174.113,2162.269107,548.7230091,301096.9407,20.34643813,6.968547998,48.5606612,4113.304294,1798.798489,3235676.005,0.878607108,1.174057204,1.378410319,0.001158114,0.055254166,0.003053023,0.092890028,0.052983432,0.002807244,-5.46E-06,0.048540246,0.002356155,-2.60E-05,0.042020932,0.001765759,5.358004535,1.932646289,3.735121678\r\n57,Simple Plan - How Could This Happen To Me.mp3,sad,1,92.28515625,117306,1275.065217,0.270525811,0.289634059,0.083887888,0.431927315,0.269526935,0.072644768,0.237570507,0.163992645,0.026893588,4.118783334,24.93919892,621.9636426,-3.846752485,46.89472303,2199.115048,0.009680363,2.050427687,4.204253701,3.549631596,1.380890965,1.906859994,1617.68338,550.5014982,303051.8995,1789.72623,429.2865292,184286.9242,22.98434091,7.325086572,53.65689329,3097.885434,1175.718086,1382313.017,1.524289773,1.746125469,3.048954153,-0.024032963,0.083720423,0.007009109,0.076536007,0.035777353,0.001280019,-3.82E-06,0.120497949,0.014519756,-3.08E-05,0.038667526,0.001495178,5.782929705,3.386759737,11.47014151\r\n58,Spooky Scary Skeleton (Remix).mp3,relax,3,129.1992188,156694,1273.934959,0.508662312,0.29679388,0.088086607,0.527496171,0.294912518,0.086973393,0.26294544,0.119134499,0.014193029,25.66208824,232.5785152,54092.76576,4.115012539,29.20754027,853.0804085,0.008671213,3.789491461,14.36024553,8.592530251,3.959408045,15.67691231,2898.494336,1186.81112,1408520.634,2560.452804,548.6389457,301004.6927,19.36479835,7.264832301,52.77778836,5831.098073,1850.582976,3424657.351,3.231671621,3.834197131,14.70106764,0.003740571,0.060717876,0.00368666,0.1438695,0.119667531,0.014320318,2.98E-05,0.215622365,0.046493005,0.000414458,0.195752844,0.038319174,1.912163265,0.991148735,0.982375815\r\n59,Stemm - Face The Pain.mp3,angry,4,112.3471467,125280,1204.615385,0.515269814,0.279728012,0.078247761,0.570368648,0.251558343,0.0632816,0.270310897,0.101318075,0.010265352,17.56883863,82.31114466,6775.124535,6.275447601,33.20979592,1102.890545,0.009572779,1.947634479,3.793280064,7.52352047,3.128091812,9.784957886,2605.17918,703.0291156,494249.9374,2456.471351,551.4083485,304051.1668,18.87956994,6.737332035,45.39164296,5267.034818,1562.876519,2442583.013,4.367678532,5.196493196,27.00354153,0.016430823,0.054401356,0.002959508,0.129248841,0.048445472,0.002346964,-9.90E-06,0.200142711,0.040057104,-0.000424632,0.133991182,0.017953636,1.407129252,0.771985797,0.595962071\r\n60,System of a Down - Lonely Day.mp3,sad,1,75.99954044,95634,1275.12,0.34864247,0.289630099,0.083885594,0.433863445,0.277158072,0.076816597,0.240750149,0.1592881,0.025372699,7.462660592,40.34433027,1627.664985,-2.357211371,45.30043597,2052.129499,0.011752454,2.373378112,5.632923664,4.405441284,2.891358852,8.359955788,1983.846749,836.6255306,699942.2785,2010.810819,612.2485286,374848.2608,24.62025512,6.364113652,40.50194257,4063.196264,1642.414746,2697526.197,2.109520325,3.199344696,10.23580648,0.011056715,0.089448063,0.008000956,0.107551315,0.049845251,0.002484549,-4.05E-06,0.152906761,0.023380477,1.70E-05,0.068197735,0.004650931,2.655201814,1.583769004,2.508324259\r\n61,Taylor Swift - Love Story.mp3,sad,1,117.4538352,152141,1289.330508,0.301311051,0.298763187,0.089259442,0.43087856,0.295626454,0.087395001,0.234013528,0.16902959,0.028571002,3.674599711,29.10227793,846.9425808,-5.143686607,55.68608552,3100.94012,0.01389207,2.668250004,7.119558084,2.93693614,2.00253582,4.010149479,1881.766381,962.0005123,925444.9856,2188.217655,730.3799954,533454.9377,22.69258187,5.617044415,31.55118796,3941.93033,1879.85833,3533867.34,1.058953722,1.51801574,2.304371786,-0.006170883,0.089460652,0.008003208,0.075154118,0.061471438,0.003778738,4.66E-05,0.10853871,0.011780651,-0.000195898,0.041570403,0.001728098,2.838639456,1.454427137,2.115358298\r\n62,Tekken 5 - Poolside.mp3,relax,3,95.703125,118697,1276.311828,0.500476054,0.280250627,0.078540414,0.547013471,0.26184079,0.068560599,0.260155574,0.125109594,0.01565241,1.740055392,11.74896005,138.0380623,2.905994912,35.33066561,1248.255933,0.013513441,1.621615401,2.629636507,2.364928722,0.60954833,0.371549159,2884.18944,421.0599906,177291.5157,2940.945437,219.9756549,48389.28874,18.83286341,6.684104407,44.67725172,6598.022603,837.8401527,701976.1214,1.00771308,1.056546576,1.116290667,0.000322874,0.047801087,0.002284944,0.094821989,0.03369975,0.001135673,-7.43E-06,0.069413662,0.004818256,-0.00016171,0.030544639,0.000932975,4.368834467,2.059942085,4.243361393\r\n63,The Fat Rat - Unity.mp3,relax,3,103.359375,132082,1282.349515,0.361239654,0.296379258,0.087840665,0.412078513,0.293714112,0.08626798,0.235266601,0.16728108,0.02798296,13.09603456,154.067537,23736.80596,1.657267574,28.29517191,800.6167532,0.006176826,3.217252972,10.35071668,5.825383186,3.67489624,13.50486279,2954.191448,787.1814175,619654.584,2753.858068,219.9833827,48392.68866,21.5562148,7.366462989,54.26477697,6257.024665,1054.981532,1112986.034,2.427223046,3.103138836,9.629470639,0.006947026,0.083542123,0.006979286,0.145542771,0.082924671,0.006876501,2.50E-05,0.19787246,0.039153509,0.000162774,0.101857424,0.010374935,1.496526077,0.891823867,0.795349811\r\n64,Three Days Grace - Animal I have Become.mp3,angry,4,123.046875,130253,1173.45045,0.457370252,0.277751404,0.077145842,0.447804324,0.287201964,0.082484968,0.248450557,0.146988619,0.021605654,5.167413858,26.76395342,716.3092029,5.521107628,39.2905115,1543.744294,0.012995916,3.082600362,9.502424993,4.124792099,1.211073518,1.466699004,2286.024572,950.5382291,903522.925,2305.758833,636.2765269,404847.8186,19.586825,7.570719957,57.31580067,4844.529039,1904.090402,3625560.257,2.032851638,2.304631267,5.311325278,0.018771639,0.075586262,0.005713283,0.10460292,0.060832177,0.003700554,1.98E-07,0.109219007,0.011928792,-0.000369615,0.067188658,0.004514316,2.491501134,1.419537072,2.015085498\r\n65,Three Days Grace - Gone Forever.mp3,sad,1,151.9990809,191720,1261.315789,0.341778424,0.296622791,0.08798508,0.453216405,0.291850927,0.085176964,0.240813725,0.15919197,0.025342083,12.91739429,70.51776555,4972.755259,2.13751191,31.64462943,1001.382572,0.013240036,2.473299237,6.117209113,6.296798229,2.67741251,7.16853714,2650.423046,883.0137856,779713.3455,2628.304155,459.3094783,210965.1969,21.29020142,7.122901447,50.73572503,5667.469896,1641.73021,2695278.082,3.02198835,3.80929194,14.51070508,-0.002487458,0.084260697,0.007099865,0.120346967,0.067657955,0.004577599,1.19E-05,0.182948813,0.033470269,7.75E-05,0.109429114,0.011974731,3.984544218,2.346334768,5.505286844\r\n66,Three Days Grace - I Hate Everything About You.mp3,angry,4,89.10290948,113152,1285.818182,0.359532167,0.298315373,0.088992062,0.480430188,0.275714595,0.076018538,0.252341646,0.13904866,0.01933453,9.583000603,56.74306174,3219.775056,-0.347878265,39.12436742,1530.716126,0.013000477,2.520549315,6.353168851,4.965517998,2.885135889,8.324008942,2155.031704,714.0394992,509852.4065,2195.807127,541.8686834,293621.67,20.91573395,6.76867607,45.81497575,4357.615317,1408.632453,1984245.389,2.348113724,3.036205477,9.218543699,-0.019382843,0.071776631,0.005151885,0.098622231,0.048965794,0.002397649,3.55E-06,0.158572525,0.025145246,5.08E-05,0.078693889,0.006192728,4.071619048,1.648065214,2.716118949\r\n67,Three Days Grace - Let it Die.mp3,angry,4,99.38401442,123670,1274.948454,0.389042501,0.287041651,0.08239291,0.448754688,0.285501512,0.081511113,0.241731086,0.157795485,0.024899415,16.92050826,81.816453,6693.931982,5.165342101,24.38895281,594.821019,0.011858547,1.898832728,3.60556573,7.461583138,2.389023781,5.707434654,2828.938283,753.1519836,567237.9103,2754.292906,361.9811066,131030.3215,20.20208177,6.833221344,46.69291394,6087.254858,1376.481268,1894700.68,3.765684715,4.223021709,17.83391235,0.008504836,0.081558868,0.006651849,0.135055873,0.066611145,0.004437045,-4.08E-06,0.206723243,0.0427345,-4.98E-05,0.119062327,0.014175837,4.373478458,3.221531479,10.37826507\r\n68,Three Days Grace - Over and Over.mp3,sad,1,135.9991776,156990,1207.615385,0.358138283,0.284385959,0.080875374,0.403314012,0.291271396,0.084839026,0.225661001,0.180029014,0.032410446,14.31468801,64.29257085,4133.534666,5.791951103,33.7440498,1138.660897,0.013211075,1.795472766,3.223722454,6.770902157,2.408128977,5.79908514,2325.336067,829.6420852,688305.9896,2408.909097,713.6214029,509255.5067,21.37460772,6.682280728,44.65287572,5108.806608,1850.993839,3426178.191,3.380720917,3.890848515,15.13870217,-0.014691733,0.094997521,0.009024529,0.110540904,0.046147704,0.002129611,2.17E-06,0.201881245,0.040756039,-4.11E-05,0.098803937,0.009762218,2.245369615,1.244123783,1.547843988\r\n69,Three Days Grace - Riot.mp3,angry,4,129.1992188,167751,1290.392308,0.453365449,0.285361155,0.081430989,0.470183233,0.280472738,0.078664957,0.250879255,0.142803826,0.020392933,16.82181334,78.72920585,6198.287854,7.917290778,24.23522618,587.3461882,0.013252582,1.949989179,3.802457798,7.561780453,2.166385174,4.693224907,2845.595211,653.2217581,426698.6652,2703.709743,394.0139635,155247.0034,18.09022595,7.335753931,53.81328574,6078.946575,1254.802078,1574528.254,4.250819644,4.602592534,21.18385803,0.024909688,0.077593465,0.006020746,0.144742889,0.054636414,0.002985138,2.36E-06,0.179258555,0.032133631,-0.000258519,0.139427707,0.019440087,1.991111111,0.994938478,0.989902576\r\n70,Three Grace - Home.mp3,sad,1,83.35433468,103925,1267.378049,0.469550774,0.277796901,0.077171118,0.441880217,0.289791682,0.083979219,0.242389796,0.15678176,0.02458052,7.639213657,50.69834188,2570.321869,6.192285993,25.86490989,668.9935638,0.012713479,2.149671137,4.621085996,4.999515533,1.386308789,1.921852112,2614.584772,645.9061323,417194.7317,2561.569515,346.6198824,120145.3429,20.40218611,7.682333883,59.01825389,5497.566757,1169.016803,1366600.286,2.313136678,2.495507707,6.227558718,0.018352358,0.083924054,0.007043247,0.107556606,0.048689647,0.002370682,-2.57E-06,0.154829338,0.023972124,-2.63E-06,0.060455248,0.003654837,3.795301587,2.15988612,4.665108052\r\n71,VAST - Touched ( Cover ).mp3,sad,1,151.9990809,137586,1083.354331,0.311471745,0.30520832,0.093152119,0.351681663,0.295965828,0.087595772,0.219265055,0.187766261,0.035256169,0.171654417,1.323896213,1.752701184,-11.50778513,75.32365406,5673.652861,0.008198219,3.042563246,9.257191107,0.709378898,0.302621216,0.091579594,2344.698909,1094.847828,1198691.767,2612.313114,650.9404993,423723.5336,21.97035588,5.530943425,30.59133517,5154.243833,2401.86177,5768939.962,0.238910832,0.303094723,0.091866411,-0.013508287,0.110898603,0.0122985,0.074836282,0.066042419,0.004361601,-1.05E-06,0.025879189,0.000669732,1.13E-06,0.006502948,4.23E-05,1.832054422,1.002470281,1.004946664\r\n72,Voicians - Loner.mp3,sad,1,172.265625,220316,1280.906977,0.500812199,0.266357649,0.070946397,0.542837788,0.261228329,0.06824024,0.270599884,0.100543703,0.010109036,18.83754964,89.10089368,7938.969255,6.179920571,25.08204243,629.1088526,0.01321851,1.631252247,2.660983895,7.996220589,2.41861105,5.849678993,2718.559883,483.7485004,234012.6116,2510.233383,403.0306884,162433.7358,18.47998372,6.889697972,47.46793814,5591.070358,1114.861498,1242916.161,4.612835166,4.944872405,24.4517631,-0.002304568,0.056423337,0.003183593,0.134021865,0.040028773,0.001602303,0.000263716,0.21729368,0.047216546,0.001940815,0.11817994,0.013966499,2.652879819,1.126104961,1.268112384\r\n73,Waysons - Eternal Minds.mp3,relax,3,129.1992188,161819,1274.165354,0.351867542,0.289378758,0.083740065,0.313733958,0.311752968,0.097189913,0.190627286,0.216782313,0.046994571,14.234461,77.17092086,5955.351026,4.309867391,31.62715751,1000.277092,0.00662311,1.537609042,2.364241565,6.816382885,2.192842722,4.808559418,2296.500372,787.8740469,620745.5138,2405.417641,546.2383025,298376.2831,21.22877315,6.584894818,43.36083976,4821.425012,1826.28827,3335328.845,3.092973793,3.516592525,12.36642298,-0.028111703,0.124325209,0.015456758,0.098219739,0.047591027,0.002264906,3.14E-08,0.228647158,0.052279521,-0.000112067,0.066621438,0.004438416,3.43539229,2.246168784,5.045274205\r\n74,You Are Not.mp3,angry,4,135.9991776,173553,1345.372093,0.355462316,0.285731936,0.081642739,0.53462494,0.251478868,0.063241621,0.262925405,0.119178709,0.014203565,10.42259281,54.27696853,2945.989312,2.928118091,45.29371491,2051.52061,0.012247643,1.526604782,2.33052216,5.492152214,2.608858824,6.806144714,1745.214664,700.0754685,490105.6615,1857.713276,521.2324515,271683.2685,21.10040274,7.120922491,50.70753713,3556.778493,1400.086823,1960243.111,2.94442841,3.708095627,13.74997318,-0.005259107,0.065379961,0.004274539,0.087514777,0.044615966,0.001990584,5.49E-06,0.163635641,0.026776621,-3.69E-07,0.081931576,0.006712784,4.022857143,2.044145797,4.178532038\r\n75,You Blocked Me On Facebook Now You're Going To Die.mp3,angry,4,129.1992188,154584,1246.645161,0.509162746,0.289091204,0.083573724,0.537313038,0.286280175,0.081956339,0.258745945,0.127999489,0.016383869,25.33818911,192.0075562,36866.90163,7.384388596,22.34578119,499.3339372,0.007296479,3.023936107,9.144189578,9.175350189,3.303755045,10.91479683,3228.688312,718.0598856,515609.9994,2793.571303,278.4994332,77561.93431,20.94360279,14.17505629,200.9322208,6588.955991,1108.622534,1229043.924,4.414053032,4.947089888,24.47369836,-0.014738246,0.066149936,0.004375814,0.131870518,0.077565147,0.006016352,7.32E-05,0.24151288,0.058328472,0.000708924,0.194600791,0.037869468,4.066975057,2.237387826,5.005904283\r\n"
  },
  {
    "path": "Feature-Extraction.py",
    "content": "import librosa\r\nimport numpy as np\r\nimport pandas as pd\r\nfrom os import listdir\r\nfrom os.path import isfile, join\r\n\r\n'''\r\n    function: extract_features\r\n    input: path to mp3 files\r\n    output: csv file containing features extracted\r\n    \r\n    This function reads the content in a directory and for each mp3 file detected\r\n    reads the file and extracts relevant features using librosa library for audio\r\n    signal processing\r\n'''\r\ndef extract_feature(path):\r\n    id = 1  # Song ID\r\n    feature_set = pd.DataFrame()  # Feature Matrix\r\n    \r\n    # Individual Feature Vectors\r\n    songname_vector = pd.Series()\r\n    tempo_vector = pd.Series()\r\n    total_beats = pd.Series()\r\n    average_beats = pd.Series()\r\n    chroma_stft_mean = pd.Series()\r\n    chroma_stft_std = pd.Series()\r\n    chroma_stft_var = pd.Series()\r\n    chroma_cq_mean = pd.Series()\r\n    chroma_cq_std = pd.Series()\r\n    chroma_cq_var = pd.Series()\r\n    chroma_cens_mean = pd.Series()\r\n    chroma_cens_std = pd.Series()\r\n    chroma_cens_var = pd.Series()\r\n    mel_mean = pd.Series()\r\n    mel_std = pd.Series()\r\n    mel_var = pd.Series()\r\n    mfcc_mean = pd.Series()\r\n    mfcc_std = pd.Series()\r\n    mfcc_var = pd.Series()\r\n    mfcc_delta_mean = pd.Series()\r\n    mfcc_delta_std = pd.Series()\r\n    mfcc_delta_var = pd.Series()\r\n    rmse_mean = pd.Series()\r\n    rmse_std = pd.Series()\r\n    rmse_var = pd.Series()\r\n    cent_mean = pd.Series()\r\n    cent_std = pd.Series()\r\n    cent_var = pd.Series()\r\n    spec_bw_mean = pd.Series()\r\n    spec_bw_std = pd.Series()\r\n    spec_bw_var = pd.Series()\r\n    contrast_mean = pd.Series()\r\n    contrast_std = pd.Series()\r\n    contrast_var = pd.Series()\r\n    rolloff_mean = pd.Series()\r\n    rolloff_std = pd.Series()\r\n    rolloff_var = pd.Series()\r\n    poly_mean = pd.Series()\r\n    poly_std = pd.Series()\r\n    poly_var = pd.Series()\r\n    tonnetz_mean = pd.Series()\r\n    tonnetz_std = pd.Series()\r\n    tonnetz_var = pd.Series()\r\n    zcr_mean = pd.Series()\r\n    zcr_std = pd.Series()\r\n    zcr_var = pd.Series()\r\n    harm_mean = pd.Series()\r\n    harm_std = pd.Series()\r\n    harm_var = pd.Series()\r\n    perc_mean = pd.Series()\r\n    perc_std = pd.Series()\r\n    perc_var = pd.Series()\r\n    frame_mean = pd.Series()\r\n    frame_std = pd.Series()\r\n    frame_var = pd.Series()\r\n    \r\n    \r\n    # Traversing over each file in path\r\n    file_data = [f for f in listdir(path) if isfile (join(path, f))]\r\n    for line in file_data:\r\n        if ( line[-1:] == '\\n' ):\r\n            line = line[:-1]\r\n\r\n        # Reading Song\r\n        songname = path + line\r\n        y, sr = librosa.load(songname, duration=60)\r\n        S = np.abs(librosa.stft(y))\r\n        \r\n        # Extracting Features\r\n        tempo, beats = librosa.beat.beat_track(y=y, sr=sr)\r\n        chroma_stft = librosa.feature.chroma_stft(y=y, sr=sr)\r\n        chroma_cq = librosa.feature.chroma_cqt(y=y, sr=sr)\r\n        chroma_cens = librosa.feature.chroma_cens(y=y, sr=sr)\r\n        melspectrogram = librosa.feature.melspectrogram(y=y, sr=sr)\r\n        rmse = librosa.feature.rmse(y=y)\r\n        cent = librosa.feature.spectral_centroid(y=y, sr=sr)\r\n        spec_bw = librosa.feature.spectral_bandwidth(y=y, sr=sr)\r\n        contrast = librosa.feature.spectral_contrast(S=S, sr=sr)\r\n        rolloff = librosa.feature.spectral_rolloff(y=y, sr=sr)\r\n        poly_features = librosa.feature.poly_features(S=S, sr=sr)\r\n        tonnetz = librosa.feature.tonnetz(y=y, sr=sr)\r\n        zcr = librosa.feature.zero_crossing_rate(y)\r\n        harmonic = librosa.effects.harmonic(y)\r\n        percussive = librosa.effects.percussive(y)\r\n        \r\n        mfcc = librosa.feature.mfcc(y=y, sr=sr)\r\n        mfcc_delta = librosa.feature.delta(mfcc)\r\n    \r\n        onset_frames = librosa.onset.onset_detect(y=y, sr=sr)\r\n        frames_to_time = librosa.frames_to_time(onset_frames[:20], sr=sr)\r\n        \r\n        # Transforming Features\r\n        songname_vector.set_value(id, line)  # song name\r\n        tempo_vector.set_value(id, tempo)  # tempo\r\n        total_beats.set_value(id, sum(beats))  # beats\r\n        average_beats.set_value(id, np.average(beats))\r\n        chroma_stft_mean.set_value(id, np.mean(chroma_stft))  # chroma stft\r\n        chroma_stft_std.set_value(id, np.std(chroma_stft))\r\n        chroma_stft_var.set_value(id, np.var(chroma_stft))\r\n        chroma_cq_mean.set_value(id, np.mean(chroma_cq))  # chroma cq\r\n        chroma_cq_std.set_value(id, np.std(chroma_cq))\r\n        chroma_cq_var.set_value(id, np.var(chroma_cq))\r\n        chroma_cens_mean.set_value(id, np.mean(chroma_cens))  # chroma cens\r\n        chroma_cens_std.set_value(id, np.std(chroma_cens))\r\n        chroma_cens_var.set_value(id, np.var(chroma_cens))\r\n        mel_mean.set_value(id, np.mean(melspectrogram))  # melspectrogram\r\n        mel_std.set_value(id, np.std(melspectrogram))\r\n        mel_var.set_value(id, np.var(melspectrogram))\r\n        mfcc_mean.set_value(id, np.mean(mfcc))  # mfcc\r\n        mfcc_std.set_value(id, np.std(mfcc))\r\n        mfcc_var.set_value(id, np.var(mfcc))\r\n        mfcc_delta_mean.set_value(id, np.mean(mfcc_delta))  # mfcc delta\r\n        mfcc_delta_std.set_value(id, np.std(mfcc_delta))\r\n        mfcc_delta_var.set_value(id, np.var(mfcc_delta))\r\n        rmse_mean.set_value(id, np.mean(rmse))  # rmse\r\n        rmse_std.set_value(id, np.std(rmse))\r\n        rmse_var.set_value(id, np.var(rmse))\r\n        cent_mean.set_value(id, np.mean(cent))  # cent\r\n        cent_std.set_value(id, np.std(cent))\r\n        cent_var.set_value(id, np.var(cent))\r\n        spec_bw_mean.set_value(id, np.mean(spec_bw))  # spectral bandwidth\r\n        spec_bw_std.set_value(id, np.std(spec_bw))\r\n        spec_bw_var.set_value(id, np.var(spec_bw))\r\n        contrast_mean.set_value(id, np.mean(contrast))  # contrast\r\n        contrast_std.set_value(id, np.std(contrast))\r\n        contrast_var.set_value(id, np.var(contrast))\r\n        rolloff_mean.set_value(id, np.mean(rolloff))  # rolloff\r\n        rolloff_std.set_value(id, np.std(rolloff))\r\n        rolloff_var.set_value(id, np.var(rolloff))\r\n        poly_mean.set_value(id, np.mean(poly_features))  # poly features\r\n        poly_std.set_value(id, np.std(poly_features))\r\n        poly_var.set_value(id, np.var(poly_features))\r\n        tonnetz_mean.set_value(id, np.mean(tonnetz))  # tonnetz\r\n        tonnetz_std.set_value(id, np.std(tonnetz))\r\n        tonnetz_var.set_value(id, np.var(tonnetz))\r\n        zcr_mean.set_value(id, np.mean(zcr))  # zero crossing rate\r\n        zcr_std.set_value(id, np.std(zcr))\r\n        zcr_var.set_value(id, np.var(zcr))\r\n        harm_mean.set_value(id, np.mean(harmonic))  # harmonic\r\n        harm_std.set_value(id, np.std(harmonic))\r\n        harm_var.set_value(id, np.var(harmonic))\r\n        perc_mean.set_value(id, np.mean(percussive))  # percussive\r\n        perc_std.set_value(id, np.std(percussive))\r\n        perc_var.set_value(id, np.var(percussive))\r\n        frame_mean.set_value(id, np.mean(frames_to_time))  # frames\r\n        frame_std.set_value(id, np.std(frames_to_time))\r\n        frame_var.set_value(id, np.var(frames_to_time))\r\n        \r\n        print(songname)\r\n        id = id+1\r\n    \r\n    # Concatenating Features into one csv and json format\r\n    feature_set['song_name'] = songname_vector  # song name\r\n    feature_set['tempo'] = tempo_vector  # tempo \r\n    feature_set['total_beats'] = total_beats  # beats\r\n    feature_set['average_beats'] = average_beats\r\n    feature_set['chroma_stft_mean'] = chroma_stft_mean  # chroma stft\r\n    feature_set['chroma_stft_std'] = chroma_stft_std\r\n    feature_set['chroma_stft_var'] = chroma_stft_var\r\n    feature_set['chroma_cq_mean'] = chroma_cq_mean  # chroma cq\r\n    feature_set['chroma_cq_std'] = chroma_cq_std\r\n    feature_set['chroma_cq_var'] = chroma_cq_var\r\n    feature_set['chroma_cens_mean'] = chroma_cens_mean  # chroma cens\r\n    feature_set['chroma_cens_std'] = chroma_cens_std\r\n    feature_set['chroma_cens_var'] = chroma_cens_var\r\n    feature_set['melspectrogram_mean'] = mel_mean  # melspectrogram\r\n    feature_set['melspectrogram_std'] = mel_std\r\n    feature_set['melspectrogram_var'] = mel_var\r\n    feature_set['mfcc_mean'] = mfcc_mean  # mfcc\r\n    feature_set['mfcc_std'] = mfcc_std\r\n    feature_set['mfcc_var'] = mfcc_var\r\n    feature_set['mfcc_delta_mean'] = mfcc_delta_mean  # mfcc delta\r\n    feature_set['mfcc_delta_std'] = mfcc_delta_std\r\n    feature_set['mfcc_delta_var'] = mfcc_delta_var\r\n    feature_set['rmse_mean'] = rmse_mean  # rmse\r\n    feature_set['rmse_std'] = rmse_std\r\n    feature_set['rmse_var'] = rmse_var\r\n    feature_set['cent_mean'] = cent_mean  # cent\r\n    feature_set['cent_std'] = cent_std\r\n    feature_set['cent_var'] = cent_var\r\n    feature_set['spec_bw_mean'] = spec_bw_mean  # spectral bandwidth\r\n    feature_set['spec_bw_std'] = spec_bw_std\r\n    feature_set['spec_bw_var'] = spec_bw_var\r\n    feature_set['contrast_mean'] = contrast_mean  # contrast\r\n    feature_set['contrast_std'] = contrast_std\r\n    feature_set['contrast_var'] = contrast_var\r\n    feature_set['rolloff_mean'] = rolloff_mean  # rolloff\r\n    feature_set['rolloff_std'] = rolloff_std\r\n    feature_set['rolloff_var'] = rolloff_var\r\n    feature_set['poly_mean'] = poly_mean  # poly features\r\n    feature_set['poly_std'] = poly_std\r\n    feature_set['poly_var'] = poly_var\r\n    feature_set['tonnetz_mean'] = tonnetz_mean  # tonnetz\r\n    feature_set['tonnetz_std'] = tonnetz_std\r\n    feature_set['tonnetz_var'] = tonnetz_var\r\n    feature_set['zcr_mean'] = zcr_mean  # zero crossing rate\r\n    feature_set['zcr_std'] = zcr_std\r\n    feature_set['zcr_var'] = zcr_var\r\n    feature_set['harm_mean'] = harm_mean  # harmonic\r\n    feature_set['harm_std'] = harm_std\r\n    feature_set['harm_var'] = harm_var\r\n    feature_set['perc_mean'] = perc_mean  # percussive\r\n    feature_set['perc_std'] = perc_std\r\n    feature_set['perc_var'] = perc_var\r\n    feature_set['frame_mean'] = frame_mean  # frames\r\n    feature_set['frame_std'] = frame_std\r\n    feature_set['frame_var'] = frame_var\r\n\r\n    # Converting Dataframe into CSV Excel and JSON file\r\n    feature_set.to_csv('Emotion_features.csv')\r\n    feature_set.to_json('Emotion_features.json')\r\n    \r\n# Extracting Feature Function Call\r\nextract_feature('Dataset/')"
  },
  {
    "path": "README.md",
    "content": "# Music Emotion Recognition\n\nA video explanation of the repo and research problem domain: https://youtu.be/5b5unjdikPo\n\n### - Introduction\n\nThe study of music and emotion seeks to understand the psychological relationship between human affect and music. It is a branch of music psychology with numerous areas of study, including the nature of emotional reactions to music, how characteristics of the listener may determine which emotions are felt, and which components of a musical composition or performance may elicit certain reactions. [1]\n\n### - Approach\n\nThere Exists 3 Approaches to solve this problem:\n- Thayers Emotional Model\n- Dataset Annotation by Music and Emotion Psychologist Experts\n- Classification based on Tags Generated by the Song\n\nResults can be improved by weighting\n- Music Lyrics\n- Music Genre\n\n### - Visualizations\n\n- Plukchik Wheel of Emotion\n\n![PlutchickWheelOfEmotion](https://upload.wikimedia.org/wikipedia/commons/thumb/c/ce/Plutchik-wheel.svg/250px-Plutchik-wheel.svg.png)\n\n- Basic Emotion Wheel\n\n![BasicEmotionWheel](https://upload.wikimedia.org/wikipedia/commons/thumb/8/8d/Emotions_-_3.png/220px-Emotions_-_3.png)\n\n- 2D Grid Representation of Emotion Labels \n\n![2DGrid](https://upload.wikimedia.org/wikipedia/en/thumb/6/62/Two_Dimensions_of_Emotion.gif.jpg/220px-Two_Dimensions_of_Emotion.gif.jpg)\n\n\n### - Reference\n\n[1] Wikipedia: Music and Emotion - https://en.wikipedia.org/wiki/Music_and_emotion\n\n[2] Wikipedia: Emotion - https://en.wikipedia.org/wiki/Emotion\n\n"
  },
  {
    "path": "SourceCode/Emotion-Recognition-RandomSeed.py",
    "content": "\"\"\"\r\n@author: Danyal\r\n\r\nThe following code classifies piece of music as one of \r\nthe four emotions mentioned in the document\r\n\"\"\"\r\n\r\nimport numpy as np\r\nimport pandas as pd\r\nimport matplotlib.pyplot as plt\r\nfrom sklearn.metrics import accuracy_score\r\nfrom sklearn.metrics import confusion_matrix\r\nfrom sklearn.neighbors import KNeighborsClassifier\r\nfrom sklearn.cross_validation import train_test_split\r\nfrom pandas.tools.plotting import scatter_matrix\r\n\r\ns\r\n\r\ndata = pd.read_csv('Dataset/Emotion_data.csv')\r\nfeature = data.ix[:, 'tempo':]\r\nlabels = list(feature)\r\ncolor = ['red' if l==1 else 'green' if l==2 else 'blue' if l==3 else 'orange' for l in data['label']]\r\n\r\nplt.style.use('ggplot')\r\n\r\narray = np.array(data)\r\n\r\nresult = []\r\nxlabel = []\r\ncolor = []\r\ncolors = ['red', 'green', 'blue']\r\nindex = 0\r\n\r\nfor random_seed in range(1, 11):\r\n    features = array[:, 5:]\r\n    labels = data.ix[:, 'class'].dropna()\r\n    test_size = 0.30\r\n    \r\n    train_d, test_d, train_l, test_l = train_test_split(features, labels, test_size=test_size, random_state=random_seed)\r\n\r\n    for neighbors in range(1, 10):\r\n        kNN = KNeighborsClassifier(n_neighbors=neighbors)\r\n        kNN.fit(train_d, train_l)\r\n        prediction = kNN.predict(test_d)\r\n        xlabel.append(neighbors)\r\n        result.append(accuracy_score(prediction, test_l))\r\n        color.append(colors[index])\r\n        index = (index+1)%3\r\n\r\nplt.figure(figsize=(10, 10))\r\nplt.xlabel('kNN Neighbors for k=1,2...10')\r\nplt.ylabel('Accuracy Score')\r\nplt.title('kNN Classifier Results')\r\nplt.ylim(0, 1)\r\nplt.scatter(xlabel, result, color=color)\r\nplt.savefig('10-folds kNN Result.png')\r\nplt.show()"
  },
  {
    "path": "SourceCode/Emotion-Recognition.py",
    "content": "\"\"\"\r\n@author: Danyal\r\n\r\nThe following code classifies piece of music as one of \r\nthe four emotions mentioned in the document\r\n\"\"\"\r\n\r\nimport numpy as np\r\nimport pandas as pd\r\nimport matplotlib.pyplot as plt\r\nfrom sklearn.metrics import accuracy_score\r\nfrom sklearn.metrics import confusion_matrix\r\nfrom sklearn.neighbors import KNeighborsClassifier\r\nfrom sklearn.cross_validation import train_test_split\r\n\r\ndata = pd.read_csv('Dataset/Emotion_data.csv')\r\nfeature = data.ix[:, 'tempo':]\r\nfeatureName = list(feature)\r\ncolor = ['red' if l==1 else 'green' if l==2 else 'blue' if l==3 else 'orange' for l in data['label']]\r\n\r\nfor name in featureName:\r\n    feature[name] = (feature[name]-feature[name].min())/(feature[name].max()-feature[name].min())\r\n\r\nplt.style.use('ggplot')\r\n\r\narray = np.array(data)\r\n\r\nfeatures = feature.values\r\nlabels = data.ix[:, 'class'].dropna()\r\ntest_size = 0.20\r\nrandom_seed = 7\r\n\r\ntrain_d, test_d, train_l, test_l = train_test_split(features, labels, test_size=test_size, random_state=random_seed)\r\n\r\nresult = []\r\nxlabel = [i for i in range(1, 11)]\r\nfor neighbors in range(1, 11):\r\n    kNN = KNeighborsClassifier(n_neighbors=neighbors)\r\n    kNN.fit(train_d, train_l)\r\n    prediction = kNN.predict(test_d)\r\n    result.append(accuracy_score(prediction, test_l)*100)\r\n\r\nplt.figure(figsize=(10, 10))\r\nplt.xlabel('kNN Neighbors for k=1,2...20')\r\nplt.ylabel('Accuracy Score')\r\nplt.title('kNN Classifier Results')\r\nplt.ylim(0, 100)\r\nplt.xlim(0, xlabel[len(xlabel)-1]+1)\r\nplt.plot(xlabel, result)\r\nplt.savefig('1-fold 10NN Result.png')\r\nplt.show()"
  },
  {
    "path": "SourceCode/Feature-Extraction.py",
    "content": "import librosa\r\nimport numpy as np\r\nimport pandas as pd\r\nfrom os import listdir\r\nfrom os.path import isfile, join\r\n\r\n'''\r\n    function: extract_features\r\n    input: path to mp3 files\r\n    output: csv file containing features extracted\r\n    \r\n    This function reads the content in a directory and for each mp3 file detected\r\n    reads the file and extracts relevant features using librosa library for audio\r\n    signal processing\r\n'''\r\ndef extract_feature(path):\r\n    id = 1  # Song ID\r\n    feature_set = pd.DataFrame()  # Feature Matrix\r\n    \r\n    # Individual Feature Vectors\r\n    songname_vector = pd.Series()\r\n    tempo_vector = pd.Series()\r\n    total_beats = pd.Series()\r\n    average_beats = pd.Series()\r\n    chroma_stft_mean = pd.Series()\r\n    chroma_stft_std = pd.Series()\r\n    chroma_stft_var = pd.Series()\r\n    chroma_cq_mean = pd.Series()\r\n    chroma_cq_std = pd.Series()\r\n    chroma_cq_var = pd.Series()\r\n    chroma_cens_mean = pd.Series()\r\n    chroma_cens_std = pd.Series()\r\n    chroma_cens_var = pd.Series()\r\n    mel_mean = pd.Series()\r\n    mel_std = pd.Series()\r\n    mel_var = pd.Series()\r\n    mfcc_mean = pd.Series()\r\n    mfcc_std = pd.Series()\r\n    mfcc_var = pd.Series()\r\n    mfcc_delta_mean = pd.Series()\r\n    mfcc_delta_std = pd.Series()\r\n    mfcc_delta_var = pd.Series()\r\n    rmse_mean = pd.Series()\r\n    rmse_std = pd.Series()\r\n    rmse_var = pd.Series()\r\n    cent_mean = pd.Series()\r\n    cent_std = pd.Series()\r\n    cent_var = pd.Series()\r\n    spec_bw_mean = pd.Series()\r\n    spec_bw_std = pd.Series()\r\n    spec_bw_var = pd.Series()\r\n    contrast_mean = pd.Series()\r\n    contrast_std = pd.Series()\r\n    contrast_var = pd.Series()\r\n    rolloff_mean = pd.Series()\r\n    rolloff_std = pd.Series()\r\n    rolloff_var = pd.Series()\r\n    poly_mean = pd.Series()\r\n    poly_std = pd.Series()\r\n    poly_var = pd.Series()\r\n    tonnetz_mean = pd.Series()\r\n    tonnetz_std = pd.Series()\r\n    tonnetz_var = pd.Series()\r\n    zcr_mean = pd.Series()\r\n    zcr_std = pd.Series()\r\n    zcr_var = pd.Series()\r\n    harm_mean = pd.Series()\r\n    harm_std = pd.Series()\r\n    harm_var = pd.Series()\r\n    perc_mean = pd.Series()\r\n    perc_std = pd.Series()\r\n    perc_var = pd.Series()\r\n    frame_mean = pd.Series()\r\n    frame_std = pd.Series()\r\n    frame_var = pd.Series()\r\n    \r\n    \r\n    # Traversing over each file in path\r\n    file_data = [f for f in listdir(path) if isfile (join(path, f))]\r\n    for line in file_data:\r\n        if ( line[-1:] == '\\n' ):\r\n            line = line[:-1]\r\n\r\n        # Reading Song\r\n        songname = path + line\r\n        y, sr = librosa.load(songname, duration=60)\r\n        S = np.abs(librosa.stft(y))\r\n        \r\n        # Extracting Features\r\n        tempo, beats = librosa.beat.beat_track(y=y, sr=sr)\r\n        chroma_stft = librosa.feature.chroma_stft(y=y, sr=sr)\r\n        chroma_cq = librosa.feature.chroma_cqt(y=y, sr=sr)\r\n        chroma_cens = librosa.feature.chroma_cens(y=y, sr=sr)\r\n        melspectrogram = librosa.feature.melspectrogram(y=y, sr=sr)\r\n        rmse = librosa.feature.rmse(y=y)\r\n        cent = librosa.feature.spectral_centroid(y=y, sr=sr)\r\n        spec_bw = librosa.feature.spectral_bandwidth(y=y, sr=sr)\r\n        contrast = librosa.feature.spectral_contrast(S=S, sr=sr)\r\n        rolloff = librosa.feature.spectral_rolloff(y=y, sr=sr)\r\n        poly_features = librosa.feature.poly_features(S=S, sr=sr)\r\n        tonnetz = librosa.feature.tonnetz(y=y, sr=sr)\r\n        zcr = librosa.feature.zero_crossing_rate(y)\r\n        harmonic = librosa.effects.harmonic(y)\r\n        percussive = librosa.effects.percussive(y)\r\n        \r\n        mfcc = librosa.feature.mfcc(y=y, sr=sr)\r\n        mfcc_delta = librosa.feature.delta(mfcc)\r\n    \r\n        onset_frames = librosa.onset.onset_detect(y=y, sr=sr)\r\n        frames_to_time = librosa.frames_to_time(onset_frames[:20], sr=sr)\r\n        \r\n        # Transforming Features\r\n        songname_vector.set_value(id, line)  # song name\r\n        tempo_vector.set_value(id, tempo)  # tempo\r\n        total_beats.set_value(id, sum(beats))  # beats\r\n        average_beats.set_value(id, np.average(beats))\r\n        chroma_stft_mean.set_value(id, np.mean(chroma_stft))  # chroma stft\r\n        chroma_stft_std.set_value(id, np.std(chroma_stft))\r\n        chroma_stft_var.set_value(id, np.var(chroma_stft))\r\n        chroma_cq_mean.set_value(id, np.mean(chroma_cq))  # chroma cq\r\n        chroma_cq_std.set_value(id, np.std(chroma_cq))\r\n        chroma_cq_var.set_value(id, np.var(chroma_cq))\r\n        chroma_cens_mean.set_value(id, np.mean(chroma_cens))  # chroma cens\r\n        chroma_cens_std.set_value(id, np.std(chroma_cens))\r\n        chroma_cens_var.set_value(id, np.var(chroma_cens))\r\n        mel_mean.set_value(id, np.mean(melspectrogram))  # melspectrogram\r\n        mel_std.set_value(id, np.std(melspectrogram))\r\n        mel_var.set_value(id, np.var(melspectrogram))\r\n        mfcc_mean.set_value(id, np.mean(mfcc))  # mfcc\r\n        mfcc_std.set_value(id, np.std(mfcc))\r\n        mfcc_var.set_value(id, np.var(mfcc))\r\n        mfcc_delta_mean.set_value(id, np.mean(mfcc_delta))  # mfcc delta\r\n        mfcc_delta_std.set_value(id, np.std(mfcc_delta))\r\n        mfcc_delta_var.set_value(id, np.var(mfcc_delta))\r\n        rmse_mean.set_value(id, np.mean(rmse))  # rmse\r\n        rmse_std.set_value(id, np.std(rmse))\r\n        rmse_var.set_value(id, np.var(rmse))\r\n        cent_mean.set_value(id, np.mean(cent))  # cent\r\n        cent_std.set_value(id, np.std(cent))\r\n        cent_var.set_value(id, np.var(cent))\r\n        spec_bw_mean.set_value(id, np.mean(spec_bw))  # spectral bandwidth\r\n        spec_bw_std.set_value(id, np.std(spec_bw))\r\n        spec_bw_var.set_value(id, np.var(spec_bw))\r\n        contrast_mean.set_value(id, np.mean(contrast))  # contrast\r\n        contrast_std.set_value(id, np.std(contrast))\r\n        contrast_var.set_value(id, np.var(contrast))\r\n        rolloff_mean.set_value(id, np.mean(rolloff))  # rolloff\r\n        rolloff_std.set_value(id, np.std(rolloff))\r\n        rolloff_var.set_value(id, np.var(rolloff))\r\n        poly_mean.set_value(id, np.mean(poly_features))  # poly features\r\n        poly_std.set_value(id, np.std(poly_features))\r\n        poly_var.set_value(id, np.var(poly_features))\r\n        tonnetz_mean.set_value(id, np.mean(tonnetz))  # tonnetz\r\n        tonnetz_std.set_value(id, np.std(tonnetz))\r\n        tonnetz_var.set_value(id, np.var(tonnetz))\r\n        zcr_mean.set_value(id, np.mean(zcr))  # zero crossing rate\r\n        zcr_std.set_value(id, np.std(zcr))\r\n        zcr_var.set_value(id, np.var(zcr))\r\n        harm_mean.set_value(id, np.mean(harmonic))  # harmonic\r\n        harm_std.set_value(id, np.std(harmonic))\r\n        harm_var.set_value(id, np.var(harmonic))\r\n        perc_mean.set_value(id, np.mean(percussive))  # percussive\r\n        perc_std.set_value(id, np.std(percussive))\r\n        perc_var.set_value(id, np.var(percussive))\r\n        frame_mean.set_value(id, np.mean(frames_to_time))  # frames\r\n        frame_std.set_value(id, np.std(frames_to_time))\r\n        frame_var.set_value(id, np.var(frames_to_time))\r\n        \r\n        print(songname)\r\n        id = id+1\r\n    \r\n    # Concatenating Features into one csv and json format\r\n    feature_set['song_name'] = songname_vector  # song name\r\n    feature_set['tempo'] = tempo_vector  # tempo \r\n    feature_set['total_beats'] = total_beats  # beats\r\n    feature_set['average_beats'] = average_beats\r\n    feature_set['chroma_stft_mean'] = chroma_stft_mean  # chroma stft\r\n    feature_set['chroma_stft_std'] = chroma_stft_std\r\n    feature_set['chroma_stft_var'] = chroma_stft_var\r\n    feature_set['chroma_cq_mean'] = chroma_cq_mean  # chroma cq\r\n    feature_set['chroma_cq_std'] = chroma_cq_std\r\n    feature_set['chroma_cq_var'] = chroma_cq_var\r\n    feature_set['chroma_cens_mean'] = chroma_cens_mean  # chroma cens\r\n    feature_set['chroma_cens_std'] = chroma_cens_std\r\n    feature_set['chroma_cens_var'] = chroma_cens_var\r\n    feature_set['melspectrogram_mean'] = mel_mean  # melspectrogram\r\n    feature_set['melspectrogram_std'] = mel_std\r\n    feature_set['melspectrogram_var'] = mel_var\r\n    feature_set['mfcc_mean'] = mfcc_mean  # mfcc\r\n    feature_set['mfcc_std'] = mfcc_std\r\n    feature_set['mfcc_var'] = mfcc_var\r\n    feature_set['mfcc_delta_mean'] = mfcc_delta_mean  # mfcc delta\r\n    feature_set['mfcc_delta_std'] = mfcc_delta_std\r\n    feature_set['mfcc_delta_var'] = mfcc_delta_var\r\n    feature_set['rmse_mean'] = rmse_mean  # rmse\r\n    feature_set['rmse_std'] = rmse_std\r\n    feature_set['rmse_var'] = rmse_var\r\n    feature_set['cent_mean'] = cent_mean  # cent\r\n    feature_set['cent_std'] = cent_std\r\n    feature_set['cent_var'] = cent_var\r\n    feature_set['spec_bw_mean'] = spec_bw_mean  # spectral bandwidth\r\n    feature_set['spec_bw_std'] = spec_bw_std\r\n    feature_set['spec_bw_var'] = spec_bw_var\r\n    feature_set['contrast_mean'] = contrast_mean  # contrast\r\n    feature_set['contrast_std'] = contrast_std\r\n    feature_set['contrast_var'] = contrast_var\r\n    feature_set['rolloff_mean'] = rolloff_mean  # rolloff\r\n    feature_set['rolloff_std'] = rolloff_std\r\n    feature_set['rolloff_var'] = rolloff_var\r\n    feature_set['poly_mean'] = poly_mean  # poly features\r\n    feature_set['poly_std'] = poly_std\r\n    feature_set['poly_var'] = poly_var\r\n    feature_set['tonnetz_mean'] = tonnetz_mean  # tonnetz\r\n    feature_set['tonnetz_std'] = tonnetz_std\r\n    feature_set['tonnetz_var'] = tonnetz_var\r\n    feature_set['zcr_mean'] = zcr_mean  # zero crossing rate\r\n    feature_set['zcr_std'] = zcr_std\r\n    feature_set['zcr_var'] = zcr_var\r\n    feature_set['harm_mean'] = harm_mean  # harmonic\r\n    feature_set['harm_std'] = harm_std\r\n    feature_set['harm_var'] = harm_var\r\n    feature_set['perc_mean'] = perc_mean  # percussive\r\n    feature_set['perc_std'] = perc_std\r\n    feature_set['perc_var'] = perc_var\r\n    feature_set['frame_mean'] = frame_mean  # frames\r\n    feature_set['frame_std'] = frame_std\r\n    feature_set['frame_var'] = frame_var\r\n\r\n    # Converting Dataframe into CSV Excel and JSON file\r\n    feature_set.to_csv('Emotion_features.csv')\r\n    feature_set.to_json('Emotion_features.json')\r\n    \r\n# Extracting Feature Function Call\r\nextract_feature('Dataset/')"
  },
  {
    "path": "SourceCode/HyperparamaterTuning.py",
    "content": "import numpy as np\r\nimport pandas as pd\r\nimport seaborn as sns\r\nimport matplotlib.pyplot as plt\r\nfrom sklearn.grid_search import GridSearchCV\r\nfrom sklearn.neighbors import KNeighborsClassifier\r\nfrom sklearn.cross_validation import train_test_split\r\nfrom sklearn.metrics import confusion_matrix\r\nfrom sklearn.metrics import accuracy_score\r\n\r\ndata = pd.read_csv('Dataset/Emotion_data.csv')\r\nX = data.ix[:, 'tempo':]\r\ny = data['class']\r\nfeatureName = list(X)\r\n\r\nfor name in featureName:\r\n    X[name] = (X[name]-X[name].min())/(X[name].max()-X[name].min())\r\n\r\nX_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=26)\r\n\r\nknn = KNeighborsClassifier()\r\nparam_grid = { 'n_neighbors': np.arange(1, 25) }\r\nknn_cv = GridSearchCV(knn, param_grid, cv=10)\r\nknn_cv.fit(X_train, y_train)\r\n\r\nprint(knn_cv.best_params_)\r\nprint(\"Baseline Accuracy: \"),\r\nprint(knn_cv.best_score_)\r\n\r\ny_pred = knn_cv.predict(X_test)\r\nprint(confusion_matrix(y_test, y_pred))\r\nprint(\"Testing Accuracy: \"),\r\nprint(accuracy_score(y_test, y_pred))"
  },
  {
    "path": "SourceCode/ScatterPlotDistribution.py",
    "content": "\"\"\"\r\n@author: Danyal\r\n\r\nThe following code plots a scatter plot for distribution of features\r\nagainst emotional classes\r\n\"\"\"\r\n\r\nimport numpy as np\r\nimport pandas as pd\r\nimport matplotlib.pyplot as plt\r\n\r\ndata = pd.read_csv('Dataset/Emotion_data.csv')\r\nfeature = data.ix[:, 'tempo':]\r\nlabels = list(feature)\r\ncolor = ['red' if l==1 else 'green' if l==2 else 'blue' if l==3 else 'orange' for l in data['label']]\r\n\r\nplt.style.use('ggplot')\r\nfor label in feature:\r\n    plt.figure(figsize=(12,12))\r\n    plt.xlabel('Class')\r\n    plt.ylabel(label)\r\n    plt.title(label + ' Distribution')\r\n    plt.scatter(data['label'], feature[label], color=color)\r\n    plt.savefig('Figure\\\\ScatterPlot\\\\' + label)\r\n    plt.show()\r\n    plt.clf()\r\n    "
  },
  {
    "path": "SourceCode/ScatterPlotNormalizedDistribution.py",
    "content": "\"\"\"\r\n@author: Danyal\r\n\r\nThe following code plots a scatter plot for distribution \r\nof features against emotional classes (normalized values)\r\n\"\"\"\r\n\r\nimport numpy as np\r\nimport pandas as pd\r\nimport matplotlib.pyplot as plt\r\n\r\ndata = pd.read_csv('Dataset/Emotion_data.csv')\r\nfeature = data.ix[:, 'tempo':]\r\nlabels = list(feature)\r\ncolor = ['red' if l==1 else 'green' if l==2 else 'blue' if l==3 else 'orange' for l in data['label']]\r\n\r\nplt.style.use('ggplot')\r\nfor label in feature:\r\n    # Normalization (value-mean)/(max-min)\r\n    feature[label] = np.abs(feature[label]-feature[label].mean())/(feature[label].max()-feature[label].min()).astype(np.float64)\r\n    \r\n    plt.figure(figsize=(12,12))\r\n    plt.xlabel('Class')\r\n    plt.ylabel(label)\r\n    plt.title(label + ' Distribution')\r\n    plt.scatter(data['label'], feature[label], color=color)\r\n    plt.savefig('Figure\\\\ScatterPlot\\\\Normalized\\\\' + label)\r\n    plt.show()\r\n    plt.clf()\r\n    "
  },
  {
    "path": "SourceCode/SingleFeaturekNN.py",
    "content": "\"\"\"\r\n@author: Danyal\r\n\r\nThe following code classifies piece of music as one of \r\nthe four emotions mentioned in the document\r\n\"\"\"\r\n\r\nimport numpy as np\r\nimport pandas as pd\r\nimport matplotlib.pyplot as plt\r\nfrom sklearn.metrics import accuracy_score\r\nfrom sklearn.metrics import confusion_matrix\r\nfrom sklearn.neighbors import KNeighborsClassifier\r\nfrom sklearn.cross_validation import train_test_split\r\n\r\ndata = pd.read_csv('Dataset/Emotion_data.csv')\r\nfeature = data.ix[:, 'tempo':]\r\nfeatureName = list(feature)\r\ncolor = ['red' if l==1 else 'green' if l==2 else 'blue' if l==3 else 'orange' for l in data['label']]\r\n\r\nplt.style.use('ggplot')\r\n\r\narray = np.array(data)\r\n\r\nfor iterator in range(4, len(array)):\r\n    features = array[:, iterator]\r\n    \r\n    # Normalization\r\n    features = np.abs(features-features.mean())/(features.max()-features.min())\r\n    \r\n    labels = data.ix[:, 'class'].dropna()\r\n    test_size = 0.20\r\n    random_seed = 7\r\n    \r\n    train_d, test_d, train_l, test_l = train_test_split(features, labels, test_size=test_size, random_state=random_seed)\r\n    \r\n    train_d = train_d.reshape(-1, 1)\r\n    train_l = train_l.reshape(-1, 1)\r\n    test_d = test_d.reshape(-1, 1)\r\n    test_l = test_l.reshape(-1, 1)\r\n    \r\n    result = []\r\n    xlabel = [i for i in range(1, 11)]\r\n    for neighbors in range(1, 11):\r\n        kNN = KNeighborsClassifier(n_neighbors=neighbors)\r\n        kNN.fit(train_d, train_l)\r\n        prediction = kNN.predict(test_d)\r\n        result.append(accuracy_score(prediction, test_l)*100)\r\n    \r\n    plt.figure(figsize=(10, 10))\r\n    plt.xlabel('kNN Neighbors for k=1,2...10')\r\n    plt.ylabel('Accuracy Score')\r\n    plt.title('kNN Classifier Result for ' + featureName[iterator])\r\n    plt.ylim(0, 100)\r\n    plt.xlim(0, xlabel[len(xlabel)-1]+1)\r\n    plt.plot(xlabel, result)\r\n    plt.savefig('Figure\\\\Individual\\\\Normalized\\\\' + featureName[iterator] + '.png')\r\n    plt.show()"
  },
  {
    "path": "SourceCode/ViolinAndStripSubplot.py",
    "content": "import numpy as np\r\nimport pandas as pd\r\nimport seaborn as sns\r\nimport matplotlib.pyplot as plt\r\n\r\ndata = pd.read_csv('Dataset/Emotion_data.csv')\r\nfeature = data.ix[:, 'tempo':]\r\ntarget = data['label']\r\ntargetName = data['class']\r\nfeatureName = list(feature)\r\n\r\nfor name in featureName:\r\n    plt.figure(figsize=(12, 12))\r\n    \r\n    plt.subplot(2,1,1)\r\n    sns.stripplot(x='class', y=name, data=data, jitter=True)\r\n    plt.title('Strip Plot for ' + name)\r\n    \r\n    plt.subplot(2,1,2)\r\n    sns.violinplot(x='class', y=name, data=data)\r\n    plt.title('Violin Plot for ' + name)\r\n    \r\n    plt.tight_layout()\r\n    plt.savefig('Plots\\\\Violin and Strip Subplot\\\\' + name)\r\n    plt.show()\r\n    plt.clf()"
  },
  {
    "path": "SourceCode/ViolinStripAndMixPlot.py",
    "content": "import numpy as np\r\nimport pandas as pd\r\nimport seaborn as sns\r\nimport matplotlib.pyplot as plt\r\n\r\ndata = pd.read_csv('Dataset/Emotion_data.csv')\r\nfeature = data.ix[:, 'tempo':]\r\ntarget = data['label']\r\ntargetName = data['class']\r\nfeatureName = list(feature)\r\n\r\nfor name in featureName:\r\n    plt.figure(figsize=(12, 12))\r\n    sns.stripplot(x='class', y=name, data=data, jitter=True)\r\n    plt.title('Strip Plot for ' + name)\r\n    plt.savefig('Plots\\\\Strip Plot\\\\' + name)\r\n    plt.show()\r\n    plt.clf()\r\n    \r\n    plt.figure(figsize=(12, 12))\r\n    sns.violinplot(x='class', y=name, data=data)\r\n    plt.title('Violin Plot for ' + name)\r\n    plt.savefig('Plots\\\\Violin Plot\\\\' + name)\r\n    plt.show()\r\n    plt.clf()\r\n    \r\n    plt.figure(figsize=(12, 12))\r\n    sns.violinplot(x='class', y=name, data=data, inner=None, color='lightgray')\r\n    sns.stripplot(x='class', y=name, data=data, jitter=True)\r\n    plt.title('Violin and Strip Plot for ' + name)\r\n    plt.savefig('Plots\\\\Violin and Strip Plot\\\\' + name)\r\n    plt.show()\r\n    plt.clf()"
  },
  {
    "path": "SourceCode/Visualization.py",
    "content": "import numpy as np\r\nimport pandas as pd\r\nimport seaborn as sns\r\nimport matplotlib.pyplot as plt\r\n\r\ndata = pd.read_csv('Dataset/Emotion_data.csv')\r\nfeature = data.ix[:, 'tempo':]\r\ntarget = data['label']\r\ntargetName = data['class']\r\nfeatureName = list(feature)\r\ncolor = ['red' if l==1 else 'green' if l==2 else 'blue' if l==3 else 'orange' for l in data['label']]\r\n\r\nfor name in featureName:\r\n    feature[name] = (feature[name]-feature[name].min())/(feature[name].max()-feature[name].min())\r\nfeature['class'] = data['class']\r\n\r\nfeature_mean = feature.ix[:, 'chroma_stft_mean'::3]\r\n\r\nfeature_std = feature.ix[:, 'chroma_stft_var'::3]\r\n\r\nfeature_var = feature.ix[:, 'chroma_stft_std'::3]\r\n\r\nfig, ax = plt.subplots(figsize=(12, 12))\r\nsns.heatmap(feature[feature['class']=='sad'].ix[:, :-1], linewidths=0.5, ax=ax, cmap='Greens')\r\nplt.show()"
  }
]