Proficiency levels @ PISA and visualisation challenge @ useR!2014

16 days to go for submissions in the DataVis contest at useR!2014 (see contest webpage).
The contest is focused on PISA data and students’ skills. The main variables that reflect pupil skills in math / reading / science are plausible values e.g. columns PV1MATH, PV1READ, PV1SCIE in the dataset.
But, these values are normalized to have mean 500 and sd 100. And it is not that easy to understand what the skill level 600 means and is 12 points in average a big difference. To overcome this PISA has introduced seven proficiency levels (from 0 to 6, see that base on plausible values with cutoffs 358, 420, 482, 545, 607, 669.
It is assumed that, for example, at level 6 ,,students can conceptualize, generalize, and utilize information based on their investigations and modeling of complex problem situations, and can use their knowledge in relatively non-standard contexts”.

So, instead of looking at means we can now take a look at fractions of students at given proficiency level. To have some fun we use sp and rworldmap and RColorBrewer packages to have country shapes instead of bars and dots that are supposed to represent pupils that take part in the study. The down side is that area does not correspond to height so it might be confusing. We add horizontal lines to expose the height.

And here is the R code

library(RColorBrewer) <- map_data(map = "world")
cols <- brewer.pal(n=7, "PiYG")
# read students data from PISA 2012
# directly from URL
con <- url("")
prof.scores <- c(0, 358, 420, 482, 545, 607, 669, 1000)
prof.levels <- cut(student2012$PV1MATH, prof.scores, paste("level", 1:7))
plotCountry <- function(cntname = "Poland", cntname2 = cntname) {
  props <- prop.table(tapply(student2012$W_FSTUWT[student2012$CNT == cntname],
         prof.levels[student2012$CNT == cntname], 
  cntlevels <- rep(1:7, times=round(props*5000))
  cntcontour <-[$region == cntname2,]
  cntcontour <- cntcontour[cntcontour$group == names(which.max(table(cntcontour$group))), ]
  wspx <- range(cntcontour[,1])
  wspy <- range(cntcontour[,2])
  N <- length(cntlevels)
  px <- runif(N) * diff(wspx) + wspx[1]
  py <- sort(runif(N) * diff(wspy) + wspy[1])
  sel <- which(, py, cntcontour[,1], cntcontour[,2], mode.checked=FALSE) == 1)
  df <- data.frame(long = px[sel], lat = py[sel], level=cntlevels[sel])  
  par(pty="s", mar=c(0,0,4,0))
  plot(df$long, df$lat, col=cols[df$level], pch=19, cex=3,
       bty="n", xaxt="n", yaxt="n", xlab="", ylab="")
# PISA and World maps are using differnt country names,
# thus in some cases we need to give two names
plotCountry(cntname = "Korea", cntname2 = "South Korea")
plotCountry(cntname = "Japan", cntname2 = "Japan")
plotCountry(cntname = "Finland")
plotCountry(cntname = "Poland")
plotCountry(cntname = "France", cntname2 = "France")
plotCountry(cntname = "Italy", cntname2 = "Italy")
plotCountry(cntname = "United States of America", cntname2 = "USA")

Are they happy at school? PISA data and visualisation challange @ useR!2014

I hope you have already heard about DataVis contest at useR!2014 (in case you did not, here is more information:
As a jury member I am not going to submit any work, but I am going to encourage you to play with the data, crunch a finding and submit interesting plot.

How easy is to download the data and create some graph?

Let’s take a look at students’ answers for questions: ’Do you feel happy at school?’ and ’How familiar are you with Declarative Fractions?’.

Are boys more familiar with 'Declarative Fractions’ than girls?
(funny fact: 'Declarative Fraction’ is a fake concept that is used in PISA to measure overconfidence)
(funny fact 2: plot familiarity with 'Declarative Fractions’ across countries, results are very interesting)

# read students data from PISA 2012
# directly from URL
con <- url("")
# variable ST62Q13 codes familiarity with 'Declarative Fraction'
tab <- pisa.table(variable="ST62Q13", by="ST04Q01", data=student2012)
ptab <- acast(tab, ST04Q01~ST62Q13, value.var="Percentage")
ddat <- data.frame(Item=rownames(ptab), ptab)
# plot it with the likert package, center=2) + ggtitle("Declarative Fraction") + theme_bw()

In which countries the fraction of kids that declare that they are happy at school is the highest?

# variable ST87Q07 codes 'Sense of Belonging - Feel Happy at School'
# pisa.table calculates weighted fractions and it's standard errors
tab <- pisa.table(variable="ST87Q07", by="CNT", data=student2012)
ptab <- acast(tab, CNT~ST87Q07, value.var="Percentage")
# need to add fake column with 0, otherwise will fail
ddat <- data.frame(Item=rownames(ptab), cbind(ptab[,4:3], 0, ptab[,2:1]))
ddat <- ddat[-grep(rownames(ddat),pattern="(", fixed=TRUE),]
# plot it with the likert package,  plot.percent.neutral=FALSE) + ggtitle("Sense of Belonging - Feel Happy at School")

There is a lot of 'kind of Likert’ scale questions in the PISA study, for sure there is a lot of nice stories as well.

Data visualisation challange at useR 2014 conference

Familiar with R and DataVis? Take a try in PISA data visualisation contest for useR2014 participants.
There are two contest tracks. In each you can win 700$.

More information about the contest can be found here:

The prizes are funded by The Organisation for Economic Co-operation and Development (OECD) and tracks are related to data from The Programme for International Student Assessment (PISA).

Note that the deadline is Sunday 29 june 2014 Pacific Daylight Time.

Below you can find an simple example how to read PISA data and plot some basic graphs.

Let’s see in which countries pupils have high average reading + math score and in which countries pupils are on average better in math than reading.

# read students data from PISA 2012
# directly from URL
con <- url("")
# calculate weighted mean from math / reading scores
# W_FSTUWT stands for final weights
mathScores <- unclass(by(student2012[,c("PV1MATH", "W_FSTUWT")], 
                 function(x) weighted.mean(x[,1], x[,2])) )
readScores <- unclass(by(student2012[,c("PV1READ", "W_FSTUWT")], 
                 function(x) weighted.mean(x[,1], x[,2])) )
# create a data.frame with scores and country names
# remove names with ( in name)
readMathScores <- data.frame(Country=names(readScores), readScores, mathScores)
readMathScores <- readMathScores[-grep(readMathScores$Country, pattern="(", fixed=TRUE),]
ggplot(readMathScores, aes(x=mathScores + readScores, y = mathScores - readScores, label = Country)) + 
  geom_text() +

Let’s add country sizes to the plot.

sizeScores <- unclass(by(student2012[,"W_FSTUWT"], 
                         sum) )
# create a data.frame with scores, sizes and country names
# remove names with ( in name)
readMathScores <- data.frame(Country=names(readScores), readScores, mathScores, sizeScores)
readMathScores <- readMathScores[-grep(readMathScores$Country, pattern="(", fixed=TRUE),]
ggplot(readMathScores, aes(x=mathScores + readScores, y = mathScores - readScores, label = Country, size = sqrt(sizeScores))) + 
  geom_text() +
  theme_bw() + theme(legend.position="none")

I am very eager to see winning submissions.

[Przegląd prasy] Dzieci w sieci a PISA 2012 rozwiązywanie problemów

Wczoraj w serwisie pojawił się ciekawy artykuł ,,Pokazujemy, z czym nie poradzili sobie Polacy w teście PISA”, dotyczący wyników PISA 2012 w obszarze rozwiązywanie problemów. Interesująca jest wypowiedź jednej nauczycielki: ,,To, co niepokoi mnie jako nauczyciela, to podobieństwo zadań oraz polecenia, które są długie i mogą nie być dla wszystkich jasne. Tak nie powinno się formułować testów”, którą można zrozumieć w ten sposób, że zdaniem nauczycielki pytania powinny być krótkie i możliwe do odpowiedzenia natychmiast. A ten obszar 'creative problem solving’ PISA szczególnie dotyczy umiejętności szukania odpowiedzi w złożonych problemach wymagających nieszablonowaości i kreatywności.

Słabsze wyniki w obszarze rozwiązywania problemów są zaskakujące, gdy zestawić ją z postawą naszych uczniów ,,pro-problemową”. Zgodnie z tą prezentacją, polscy uczniowie częściej niż inni deklarują, że lubią i potrafią rozwiązywać problemy (slajd z tej prezentacji poniżej).

Jak więc jest z tą umiejętnością używania technologii w rozwiązywaniu problemów? Dzisiaj Paula C przedstawi badanie ,,Dzieci w Sieci” dotyczące wykorzystania technologii wśród przedszkolaków.

Gfk Polonia, na zlecenie serwisu praz Atmediów zrealizowało badanie dotyczące obecności i zachowań najmłodszych użytkowników Internetu.

Więcej informacji tutaj.


Z badania wynika, że aż 78% procent dzieci w wieku 3- 6 lat korzysta z Internetu kilka razy w tygodniu. Szczególnie dużym zainteresowaniem wśród przedszkolaków (70%) cieszy się możliwość oglądania filmów i seriali za pośrednictwem Internetu.

Dzieci w coraz większym stopniu korzystają także z nowoczesnych urządzeń – 79% ma dostęp do komputera osobistego, 42% do smartfonów, 37% natomiast korzysta z tabletów.

Badanie pokazuje również, że rodzice są świadomi zagrożeń związanych z użytkowaniem Internetu przez ich dzieci. Mimo to, 85% rodziców jest zdania, że dzieci korzystając z sieci mogą się wiele nauczyć, a 83% wskazuje, iż Internet rozwija potrzebne w dzisiejszych czasach umiejętności.



Firma GfK Polonia przebadała 2191 rodziców dzieci, które są w wieku od trzech do sześciu lat i aktywnie korzystają z Internetu. Badanie przeprowadzono na przełomie stycznia i lutego 2014 r.

„Przedszkolaki w Sieci” to kontynuacja badania „Dzieci w necie”, przeprowadzonego przez Atmedia w 2011 r.


PISA a status ekonomiczny, społeczny i kulturowy

Bohaterem dzisiejszego wpisu jest jądrowy estymator gęstości.

Analizując dane znajduje się czasem zaskakujące zależności. Nie zawsze wiadomo co z nimi zrobić. Poniżej opiszę takie znalezisko, które wydaje się być interesujące, choć jeszcze nie jestem pewien dlaczego. Materiał w sam raz na blog.

Badanie PISA na podstawie kwestionariusza ucznia ocenia status ESCS rodziny (skrót od Economic, Social and Cultural Status), który agreguje informacje o zamożności i edukacji rodziców jak i o stanie posiadania dóbr kultury (książek, obrazów, itp). Sztuczny jednowymiarowy indeks, ale ponieważ wiadomo, że zamożność rodziny koreluje z wynikami uczniów, więc często go się uwzględnia w analizach z powodu wygody (po co dodawać do modelu 10 zmiennych gdy można jedną?).

Ciekawe jest nie tylko śledzenie zależności pomiędzy wynikami uczniów a indeksem ESCS ale również oglądanie jak rozkład ESCS zmienia się pomiędzy kolejnymi badaniami.

Nie można porównywać bezpośrednich wartości ESCS ponieważ w każdym badaniu PISA są one inaczej normowane (coraz więcej krajów bierze udział w badaniu), ale można porównywać kształty rozkładów.

Rozkład indeksu ESCS dla 15-latków z Polski w roku 2003 wyglądał tak:

Czytaj dalej PISA a status ekonomiczny, społeczny i kulturowy

PISA 2012 a wielkość miasta, poziom edukacji rodziców czy płeć uczniów

Ostatnio wiele się mówi o wynikach z badania PISA 2012. Polscy uczniowie wypadli w tym badaniu bardo dobrze, można te wyniki wykorzystać w budowaniu marki Polski jako kraju ludzi wyedukowanych. Dla gospodarki to spora szansa – pozostaje mieć nadzieję, że będzie wykorzystana. Największe wrażenie robi tempo poprawy wyników przez naszych uczniów. Poniżej chciałbym napisać o wynikach, które nie znalazły się w raportach OECD, ale z punktu widzenia naszego kraju są bardzo ciekawe:

Wielkość miasta

Zobaczmy jak wyglądają wyniki uczniów w dużych miastach, średnich miastach i małych miasteczkach. W większości krajów uczniowie z większych miast mają lepsze wyniki. Składa się na to wiele czynników, między innymi dzieci w dużych miastach to częściej dzieci biznesmenów i specjalistów – osób zamożniejszych mających większy dostęp do zasobów edukacyjnych. W większych miastach jest też organizowanych więcej inicjatyw edukacyjnych.

Powyższy wykres przedstawia promil rozwiązanych zadań przez różne grupy uczniów. W tym przypadku te grupy odpowiadają wielkości miasta w którym zlokalizowana jest szkoła – czy to wioska, małe, średnie czy duże miasto. Każdy wiersz odpowiada grupie uczniów ze szkół zlokalizowanych w mieście o danej wielkości.

Każda szara kropka to jeden kraj, czerwona kropka to pozycja Polski. Dzięki temu możemy zobaczyć jak wygląda pozycja Polski względem innych krajów w danej wielkości miasta. Czerwony prostokąt pośrodku oznacza 50% krajów o najbardziej średnich wynikach, dzięki temu łatwiej się zorientować, czy Polska jest w górnym kwartylu, czy bliżej środka rozkładu.

Po prawej stronie zaznaczono pozycje Polski w rankingu, biorąc pod uwagę tylko daną kategorię wielkości miasta. Dla dużych miast, zamieszkałych przez ponad milion mieszkańców (w Polsce to tylko Warszawa) zajmujemy drugie miejsce na 33 kraje, w przypadku średnich miast – piąte miejsce na 41 krajów itp. Nie wszystkie kraje z badania PISA mają bardzo duże lub bardzo małe miasta, dlatego liczba krajów w rankingu jest różna w różnych wierszach. W tym podsumowaniu uwzględniono tylko kraje biorące udział w PISA 2003 i PISA 2012, a więc 44 kraje z 69 krajów które brały udział w PISA 2012.

Co widzimy? 15-latki z Warszawy mają wyniki znacznie lepsze niż 15-latki z innych ponad milionowych miast. Rozwiązali oni średnio 65% zadań z matematyki (* to ważona średnia, patrz wyjaśnienie na końcu wpisu). W mniejszych miastach ten wskaźnik wynosi około 50% rozwiązanych zadań. Średnio 15-latkowie z Polski osiągnęli bardzo dobre wyniki, a im większe miasto tym ta średnia jest (względnie) wyższa.

Powyższy wykres prezentuje wyniki dla czytania ze zrozumieniem i nauk przyrodniczych. Co ciekawe w czytaniu i przyrodzie uczniowie z Warszawy mają pierwsze miejsce w kategorii dużych miast (pierwsze na 33 kraje, tu nie ma wszystkich 69 krajów z PISA 2012). Na górze wykresu przedstawione są „gap size” – wielkości różnic w wynikach pomiędzy uczniami z dużych i małych miast. W Polsce te różnice są duże.

Wyniki a poziom edukacji rodziców

Edukacja rodziców jest przedstawiona w skali ISCED, gdzie ISCED 1 – wykształcenie podstawowe a ISCED 5 – wykształcenie wyższe, ISCED 6 – stopień doktora.

Jak widzimy dzieci rodziców o wyższym wykształceniu mają średnio wyższe wyniki. Ten „bonus” w przypadku Polski jest większy niż w innych krajach. Przy okazji można zauważyć jak te rankingi ujawniają trudności w porównywaniu wyników. Patrząc na rezultaty dzieci przez pryzmat edukacji rodziców, Polska wypada na pozycjach 7./12./15., czyli niżej, niż gdy dzieliliśmy je ze względu na wielkość miasta. Wynika to z różnych udziałów dużych i małych miast w różnych krajach.

Wyniki a płeć uczniów

Na wyniki można spojrzeć przez pryzmat podgrup określonych przez płeć. Co ciekawe, dziewczyny są w wyższym centylu, gdy porównywać je z dziewczynami z innych krajów. Bardzo pozytywny jest niski „gender gap” w przyrodzie i matematyce. O ile przewaga dziewczyn w czytaniu ze zrozumieniem jest „regułą” w każdym kraju, o tyle stereotypowe postrzeganie chłopców jako lepszych z matematyki jest prawdziwe tylko w niektórych krajach. W Polsce ta różnica jest (średnio) mała.

* Z uwagi na sposób losowania uczniów do badania PISA, struktura uczniów w badaniu może być inna niż struktura uczniów w kraju. Aby uwzględnić te różnice, każdy uczeń ma wagę opisującą na ile jest on reprezentatywny dla całej populacji. Wszelkie średnie i frakcje są liczone z uwzględnieniem tych wag.

PISA 2012 – w jakich kategoriach poprawiliśmy nasze wyniki

Na początku grudnia opublikowano wyniki z badania PISA 2012, które dotyczyły umiejętności 15-latków z różnych krajów. Polscy uczniowie wypadli dobrze w tych badaniach, ale bardziej niż dobry wynik cieszy systematyczna (obserwowana przez ostatnie 12 lat) poprawa poziomu umiejętności.

Dziś napiszemy o tym w jakich obszarach umiejętności rosły najszybciej. Ale zanim napiszę o wynikach, kilka zdań o metodologii: Analizie poddamy 29 krajów które brały udział w badaniach PISA 2003 i PISA 2012. Te badania są odległe o 9 lat, oba skupione na matematyce, co znaczy że większość z pytań w tych dwóch edycjach dotyczyła matematyki.
Ponadto wybierzemy tylko te zadania, które rozwiązywano zarówno w teście z roku 2003 i z roku 2012. Czyli będziemy sprawdzać jak liczba poprawnych odpowiedzi na dokładnie to samo pytanie zwiększyła się po dziewięciu latach. Każde pytanie jest sklasyfikowane ze względu na dziedzinę wiedzy – czy pytanie dotyczy matematyki czy nauk przyrodniczych? Jeżeli matematyka, to czy to pytanie z algebry czy z rachunku prawdopodobieństwa? Jakich kompetencji to pytanie wymaga – szukania połączeń, czy reprodukcji?

Czytaj dalej PISA 2012 – w jakich kategoriach poprawiliśmy nasze wyniki

Dziś zaprezentowano pierwsze wyniki i dane z badania PISA 2012

W roku 2012 w ponad 70 gospodarkach (czasem miasta/regiony z jednego kraju traktowane są osobno, stąd nazwa gospodarka) przeprowadzono badanie PISA, polegające na testowaniu umiejętności matematycznych, czytania ze zrozumieniem i znajomości nauk przyrodniczych u 15 latków.

Dane te były analizowane przez spory zespół analityczny, a dziś o godzinie 11 czasu paryskiego upubliczniono pierwszą część danych i wyników.

Streszczenie wyników znaleźć można na stronie (to wersja polskojęzyczna).

O szczegółowych wynikach będziemy jeszcze nie raz pisać na tym blogu.
Poczekam tylko aż opadną emocje, związane z porównywaniem pozycji w rankingach i przyjdzie czas na głębsze refleksje co się u nas zmienia.
Rosną aspiracje uczniów, rośnie średnia wyników, rozwarstwia się status socjoekonomiczny uczniów, co to oznacza?