Skip to content

Instantly share code, notes, and snippets.

@Deleetdk
Created April 26, 2016 03:11
Show Gist options
  • Save Deleetdk/6ee734db2292be83ab3c6a055c9adbf0 to your computer and use it in GitHub Desktop.
Save Deleetdk/6ee734db2292be83ab3c6a055c9adbf0 to your computer and use it in GitHub Desktop.
An analysis of change in Egyptian skull sizes from -4000 to 150. Post: http://emilkirkegaard.dk/en/?p=5933
### EGYPTIAN SKULLS ANALYSIS
# libs --------------------------------------------------------------------
library(pacman)
p_load(ggplot2, ade4, magrittr, reshape2, kirkegaard, plyr, psych)
# data --------------------------------------------------------------------
#load
data(skulls)
d_skulls = skulls
#period
d_skulls$period = rep(c(-4000, -3300, -1850, -200, 150), each = 30)
#rename
colnames(d_skulls) = c("maximum_breadth", "basibregmatic_height", "basialveolar_length", "nasal_height", "period")
#factor
fa(d_skulls[-5])
#long format
d_skulls_long = melt(d_skulls, id.vars = "period")
#means
d_skulls_means = ddply(d_skulls_long, .variables = .(period, variable), .fun = summarize,
"mean" = mean(value),
"se" = sqrt(var(value)/length(value)))
# plot --------------------------------------------------------------------
ggplot() + geom_point(data = d_skulls_long, aes(period, value, color = variable)) + ylab("size (mm)") + xlab("year") +
geom_line(data = d_skulls_means, aes(period, mean, color = variable)) +
geom_errorbar(data = d_skulls_means, aes(period, ymax = mean + 1.96 * se, ymin = mean - 1.96 * se), color = "red") +
scale_color_discrete(name = "Skull measurement") +
ggtitle("Change in Egyptian skull sizes: -4000 to 150")
ggsave("egyptian_skull_sizes.png")
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment