Last summer, I and my trusty henchpeople from the Department of Politics ran an intensive six week summer course for incoming freshmen on data science (‘POL245’, for locals).
This post sketches out how I think course infrastructure should work, and provides some practical details of how we arranged things. Most of our structures worked pretty well. Some didn’t, so I also try to say what we’ll do differently next time. Some of this is, inevitably, specific to POL245, but maybe there’s something you can take away if you ever teach such a course yourself.
Let’s start with what course infrastructure is for.
Continue reading How to run a course (if you’re me)
TheyWorkForYou is a great website for keeping up with British politics and one of the many fine things mySociety does to make democracy in the UK more transparent.
There’s also an API, accessible via
http and wrapped up for a few languages. However, R is not amongst them, so I wrote twfy.
If you’re interested in using it (and you’ve got
devtools installed) you can install it with
It was my first proper API package and a bit of a learning experience. If you want to hear more about that, read on.
Continue reading Packaging the TheyWorkForYou API
Pretty regularly – usually in the middle of one of those interminable fixed-vs-random effects discussions – someone will pipe up that “Of course, for Bayesians this random vs fixed effect distinction makes no sense because all parameters are random”.
To the extent it can be made to make sense, the claim is false. It’s also unhelpful because it’s pretty much guaranteed to confuse and put-off people who have better things to do than pay attention to arguments in statistics.
But on the off chance you have a moment for one of those, let me try to disentangle things.
Continue reading No, Bayesians don’t think all parameters are random
Some people think it isn’t rational to vote. Usually the argument is as follows: the probability of being pivotal, that is: the probability that your vote will ‘decide’ the winner, shrinks rapidly as the number of voters increases. So if you vote in the hope of determining an outcome, then the probability of that happening is small enough for it not to be worthwhile trying.
Let’s leave aside the virtues of this argument and consider a hypothetical against vaccination.
Continue reading Voting and vaccinating
A: You know I like the idea of using logic and logical deduction to understand how thinking should be done. This idea that beliefs are, or at least should be, the conclusions of deductive arguments is very clear and elegant. But I do worry…
B: You worry? Tell me about your worries.
Continue reading Premises
Sometimes a bit of R code needs to know what operating system it’s running on. Here’s a short account of where you can find this information and a little function to wrap the answer up neatly.
Continue reading Identifying the OS from R
A little while back a New York Times article discusses the consequences for college admission of saying undiplomatic things in social media. Apparently colleges monitor, or at least check up on, the social media presence of their potential applicants to see whether they’re the right kind of person for the school. Inevitably, students scrub, curate, or simply hide their account in response.
Leaving aside the possible rights and wrongs of this behaviour, we might ask: how does the college identify a social media account as belonging to one of their potential students? The general answer is that social media like Facebook and Google plus have a ‘real names policy’. And the answer to why they have that is, allegedly, that people behave more civilly towards one another when they are not hidden behind an anonymising username. One may doubt that is the only reason, given the value of the personal information thereby acquired. Nevertheless it seems to widely believed that, despite some awkward evidence to the contrary, that this works.
How does it work, if it does? Continue reading What’s so great about real names?
Hey Mac OSX users with Java 1.8 installed. Did R just request a Java 1.6 installation and then promptly crash your session? If so, read on…
Continue reading Getting R and Java 1.8 to work together on OSX
A couple of days ago the Monkey Cage featured Ben Lauderdale’s one-dimensional scaling model of US State of the Union addresses. In this post, I replicate the analysis with a closely related model, ask what the scaled dimension actually means, and consider what things would look like if we added another one.
The technical details are all at the bottom of the post if you want to try this at home.
Continue reading More SOTU Scaling