Friday, July 17, 2015

What's Happened So Far

So far, there haven't been too many major developments (see the first post on this blog for a summary of who is leading), but here are a few interesting things.

Donald Trump (R) has averaged a 1.12% (+/- 0.56%) increase each night for the past 2 weeks. This has led to him skyrocketing to 2.37M Likes, up from 2.04M on the Fourth of July. The penultimately popular candidate, Rand Paul (R), is still the only other candidate with more than 2M Likes, but has shown very little momentum (500+/-230 Likes per day).

From Independence Day until now, the only changes in rank based on total Likes were: Carly Fiorina (R) passing Chris Christie (R) on July 11 and Bobby Jindal (R) passing Rick Santorum (R) on July 17. Fiorina has seen rapid growth (1.4% +/- 0.48% daily increase, approximately 1500 Likes), while Christie has seen little change. Jindal's surpassing of Santorum was essentially inevitable; Santorum is the only candidate to have shown a net decrease at any point (Joe Biden [D] has also shown a net decrease, but has not announced whether he will run -- he's included in the data set for comparison however). As such, Jindal's paltry 330+/-180 Likes would eventually overtake Santorum's 36+/-38 Likes.

It happens to be that the Republican candidates are performing better than the Democratic candidates using only Likes, which is why the major changes seem to be happening within the GOP. For the Democrats, as of July 17, it seems that Bernie Sanders (I) is within spitting distance of Biden (828K Likes to Biden's 836K). If he does not surpass Biden tonight, it will be the next night for sure (unless Biden so happened to decide to run today). Hillary Clinton (D) is still considerably ahead with 1.06M Likes. However, for most of the days in the past 2 weeks, Sanders has been slowly closing the gap, from 276K Likes to 234K. Should things continue at present rates (approximately 3000 Likes per night), Sanders will catch Clinton in approximately 90 days -- mark your calendars, folks, there's your first (highly inaccurate, simple, almost certainly wrong, grassroots-movement-ignorant) prediction! Guess we'll see about that in mid-October.



As for me, producing this page has helped me see some of the utilities I need to be building. I'll keep the code minimal here, for the most part, but a fun little thing I needed was a lookup function to give the index of a candidate in the data set based on their name. In Mathematica, I used this function:

findIndex[candidate_String] := Position[names, _String?(StringContainsQ[#, candidate] &)][[1, 1]]

This reads in a string of the candidate's name (or partial name, such as "Sand") and compares the name against all available names (in the variable names), and returns the first such match. Anyway, fun little function thing. Carry on.

No comments:

Post a Comment