Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

I’ve already posted on “house effects”, the tendency of polling organizations to systematically vary in their results from one another. In this post, I look specifically at these house effects, and show which polling organisations over or under-estimate support for each candidate–compared to the average–in this presidential election in Argentine.

The graph above plots the house effects for the main presidential candidates considering more than 115 polls that I’ve collected since 2014.

In essence, the house effects measure how far polls by a pollster are from what would be expected based on trends over time for the average polling house. In other words, the average house effect toward each candidate/party is expected to be zero by design. Then, a poll that is systematically 2% below what would be predicted for the date the poll was conducted will have a house effect of -2.0%.

The dots in “red” in the plot represent the pollster whose house effects were negative toward Mauricio Macri, while dots in “blue” represent positive effects toward him.

The electoral result tonight was a bit of surprise as several pollsters didn’t seem to have pick out a crescendo preference for the opposition candidate, Mauricio Macri, among undecided voters over the last week. This blog has more details.

library(scatterplot3d)
houseEffects$pcolor[houseEffects$Macri< 0] <- "red"
houseEffects$pcolor[houseEffects$Macri>=0] <- "blue"

with(houseEffects, {
s3d <- scatterplot3d(Scioli, Massa, Macri, # x y and z axis
angle=30, # angle of the plot
color=pcolor, pch=19, # filled blue circles
type="h", # vertical lines to the x-y plane
main="House Effects",
xlab="Daniel Scioli",
ylab="Sergio Massa",
zlab="Mauricio Macri")

s3d.coords <- s3d$xyz.convert(Scioli, Massa, Macri) # convert 3D coords to 2D projection text(s3d.coords$x, s3d.coords\$y,  # x and y coordinates
labels=Pollster,  # text to plot
cex=.5, pos=4) # shrink text 50% and place to right of points)
legend("topleft", inset=0, # location and inset
bty="n", cex=.7,  # suppress legend box, shrink text 70%
title="House effects towardnDaniel Scioli",
c("-", "+"), fill=c("red", "blue"))
})