When you have students working in a project there is always an element of quality control. Some times the results just make sense, while others we are suspicious about something going wrong. This means going back to check the whole analysis process: can we retrace all the steps in a calculation (going back to data… Continue reading Reducing friction in R to avoid Excel
Category: teaching
Collecting results of the New Zealand General Elections
I was reading an article about the results of our latest elections where I was having a look at the spatial pattern for votes in my city. I was wondering how would I go over obtaining the data for something like that and went to the Electoral Commission, which has this neat page with links… Continue reading Collecting results of the New Zealand General Elections
Where are New Zealand’s bellwether electorates?
I was reading a piece by Graeme Edgeler who, near the end, asked "Where are New Zealand's bellwether electorates?". I didn't know where the data came from or how was the "index of disproportionality for each electorate" calculated, but I saw it mostly as an opportunity to whip up some quick code to practice the… Continue reading Where are New Zealand’s bellwether electorates?
Functions with multiple results in tidyverse
I have continued playing with the tidyverse for different parts of a couple of projects. Often I need to apply a function by groups of observations; sometimes, that function returns more than a single number. It could be something like for each group fit a distribution and return the distribution parameters. Or, simpler for the… Continue reading Functions with multiple results in tidyverse
Turtles all the way down
One of the main uses for R is for exploration and learning. Let's say that I wanted to learn simple linear regression (the bread and butter of statistics) and see how the formulas work. I could simulate a simple example and fit the regression with R:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
library(arm) # For display() # Simulate 5 observations set.seed(50) x <- 1:5 y <- 2 + 3*x + rnorm(5, mean = 0, sd = 3) # Fit regression reg <- lm(y ~ x, dat) display(reg) # lm(formula = y ~ x, data = dat) # coef.est coef.se # (Intercept) 3.99 3.05 # x 2.04 0.92 # --- # n = 5, k = 2 # residual sd = 2.91, R-Squared = 0.62 # Plot it plot(y ~ x) abline(coef(reg)) |
The formulas for the intercept ($latex b_0$) and… Continue reading Turtles all the way down