Dataverzamelen met audiocodes

Mobiel data verzamelen via audio codes: De toekomst is al voorbij

Toekomst?

De toekomst voorbijScene uit de film Minority Report: Anderton vlucht weg, nadat er een voorspelling is gedaan dat hij een moord gaat plegen. Onderweg komt hij langs veel plaatsen waar hij gepersonificeerde aanbiedingen krijgt. Een mooi manier om te laten zien, dat vluchten eigenlijk geen zin heeft, want men weet waar je bent…. Verre toekomst? Nou, niet meer.

Dataverzamelen via audio codes

Vandaag hield Tim Farmer van Ipsos een interessant maar ook angsaanjagend verhaal oMobiel data verzamelen met audiocodesver data verzamelen via de mobiele telefoon. Ze hebben een app ontwikkeld, bedoeld om te onderzoeken of de bezitter in contact gekomen is met een bepaalde reclame-uiting. Aan de reclame-uiting is namelijk een audiocode toegevoegd die door de luidspreker van de telefoon opgevangen wordt. Hierdoor is bekend, wanneer, hoe vaak en waar iemand in aanraking is gekomen met de reclame. Bij de pilot is aan het eind van het traject een vragenlijst afgenomen om meer te weten te komen over het merkbeleving en de neiging om het product te kopen.

Uitkomsten

Een interessante uitkomst was dat de mensen die wel in aanraking geweest waren met de uiting, maar dat zelf niet (meer) wisten, een positievere merkbeleving hadden, dan de mensen die niet in aanraking waren gekomen (en dit ook correct aangeven). Mensen worden dus (onbewust) beinvloed door de reclame.

Voordelen

Op zich een mooie manier van onderzoek doen, de deelnemer is zich niet bewust wat er onderzocht wordt en er is dus minder bias. Hij hoeft er geen extra inspanning voor te doen (behalve zijn telefoon altijd bij zich te hebben) en de data is direct beschikbaar. Je zou het bijvoorbeeld ook kunnen gebruiken om de reclamecampagne te beeindigen als meer dan 70% de reclame meer dan 5 keer gehoord heeft, eventueel zelfs met een aantal condities, zoals dat er weinig voorgrondgeluid was.

Vraagtekens

Aan de andere kant… Zo’n app verzameld aardig wat informatie over de gebruiker, en kan in potentie je hele leven registreren. Het vraagt veel vertrouwen in de onderzoeker of naiviteit van de gebruiker. Ik ben benieuwd of dit een onderzoeksmethode gaat worden, die breed ingezet kan worden in een dwarsdoorsnee van de bevolking. En als dat zo is, hoe de deelnemers verleid gaan worden om mee te doen. Een incentive van 20 eur om 3 maanden gevolgd te mogen worden, lijkt mij niet voldoende.

Evolution over period with annotations

Google analytics records blog posting (test)

Nerd alert:
If we want to interpret web statistics it is useful to have information when important events happened. Such an event is the date a new blog post is published. I use Google Analytics and Piwik next to each other, mostly for testing and comparing. Both Google Analytics and Piwik have ‘annotations’. These can be used to analyse your data. However….

The connection between this WordPress site and Piwik is handled by the plugin WP-Piwik. This plugin is responsible for recording website visits. But it is also possible to automatically send an annotation to Piwik if a new blog post is published. These annotations are for instance displayed in the ‘Evolution over the period’ graph on the visitors overview page. You can easily see when a certain post is published and compare this with the user visitsEvolution over period with annotations statistics (see graph).

Google Analytics also have annotations, but unfortunately the Google Analytics API does not seem to have a method (yet?) to receive these annotations from an external source (you could add these manually each time you publis a post, but who is going to do this?) A work around is provided with the WordPress plugin Google Analytics Internal. It should trigger an Analytics event when we publish a post.

This morning I installed this plugin and now it is time to test to see if it is working and to investigate how we can use these event to get a better insight of the influence of certain blog post to website visits

Results in Google Analytics

It took a while, but via custom reports I’m able to display the publish event and the page visits at the same time. And I could investigate which events took place. But it needs some further investigation to see if we can tailor this more to my wishes…. (and some more time to display the graph with the effect of this blogpost)Visits last week and publish event recording

Dag van de normalisatie: Leeftijd bij het CBS

Vandaag is het de dag van de normalisatie. Simpel gezegd houdt normalisatie in dat er normen afgesproken zijn, zodat bijvoorbeeld alle electrische apparaten in Nederland (en veel andere landen) die werken, rekeninghoudend met voltage en al dat soort technische zaken en natuurlijk een passende stekker hebben.

Helaas zijn er verschillende normen die gehanteerd kunnen worden. Zo is het stopcontact in het Verenigd Koninkrijk net anders dan die in Nederland. Maar door de normen, kunnen er gelukkig wel weer verloopstekkers gemaakt worden om dit op te lossen. Vervelender vind ik de wildgroei aan stekkers en voltages voor laders (en accu’s) van laptops. In al die jaren heb ik nog geen enkele keer een lader van een eerdere laptop kunnen gebruiken. Ook de kans dat je iemand zijn lader kan gebruiken is behoorlijk klein.

Ook bij het doen van onderzoek is normalisatie erg belangrijk. Zonder normalisatie is het lastig om data van het ene onderzoek te vergelijken of te gebruiken bij ander onderzoek. Ik heb de proef op de som genomen bij de indeling van leeftijd zoals die door het CBS gehanteerd wordt. Ik heb op http://statline.cbs.nl gezocht op leeftijd en van de eerste 20 resultaten gekeken welke leeftijdsindeling gebruikt wordt/kunnen worden in de rapportage. Ik heb er 12 verschillende gevonden. Deels is dit wel logisch. De leeftijd bij onderzoek onder basisschoolkinderen is anders opgebouwd dan bij onderzoek naar de werkende bevolking. Maar anderen zijn vrij onhandig gekozen. Het combineren met andere data wordt dan vrij lastig. Vaak zijn wel andere indelingen aanwezig (5 jaarsgroep of 10 jaarsgroep). Maar de indeling die gehanteerd wordt bij Leefstijlonderzoek is erg afwijkend en slecht vergelijkbaar met andere onderzoeken:

  • 4-12 jaar (8 jaarsgroep)
  • 12-16 jaar (4 jaarsgroep)
  • 16-20 jaar (4 jaarsgroep)
  • 20-30 jaar (10 jaarsgroep)
  • 30-40 jaar (10 jaarsgroep)
  • 40-50 jaar (10 jaarsgroep)
  • 50-55 jaar (5 jaarsgroep)
  • 55-65 jaar (10 jaarsgroep)
  • 65-75 jaar (10 jaarsgroep)
  • 75 jaar of ouder

Dag van de duurzame eieren

Vandaag is het de dag van de duurzaamheid en de internationale dag van het ei (*). Het leek me leuk om deze twee te combineren. Een interessante vraag is dan: Hoeveel eieren worden er duurzaam geproduceerd en wat is de trend daarvan. Het vinden van data viel me erg tegen. Het CBS publiceert alleen over het aantal bedrijven en aantal dieren en maakt alleen onderscheid tussen totaal en biologisch. Ze publiceren dus niet apart over bijvoorbeeld vrije uitloop, scharrel- en kooieieren.  Het productschap vee, vlees en eieren publiceerde wel een overzicht. Maar deze is opgeheven per 1 januari 2015, dus zijn hier ook geen recente cijfers te vinden. Ook veel andere ‘ei’-organisaties zijn moeilijk online te vinden of hebben geen data.

De beste gegevens die ik gevonden heb, zijn dus het aantal biologische leghennen als aandeel van alle leghennen voor de periode 2011-2014. In onderstaande figuur is te zien dat dit percentage iets meer dan 2% is. Er lijk 2012 een kleine stijging gerealiseerd te zijn. Als ik meer tijd kon besteden, had ik mogelijk ook informatie over vrij uitloop en scharreleieren kunnen vinden. We zouden dan een beter beeld hebben van de productie (en daarmee het gebruik) van duurzame eieren.

dag van duurzaamheid: percentage biologische leghennen in Nederland

 

 

 

 

 

 

* ) De komende tijd zal ik vaker een post doen geïnspireerd op de ‘Dag van…..’. Bijna elke dag is het wel een bijzondere dag. Een mooi overzicht is te vinden op: http://www.fijnedagvan.nl/. Ik zal er een aantal kiezen om een data-gebaseerde post te schrijven. Daarbij zal ik wel steeds vanuit een vraag vertrekken.

Pentaho Community Meeting 2014: Hackathon

Presenting our results at PCM14 (gpx output on screen)This year the Pentaho Community Meeting 2014 (pcm14) was in Antwerpen and started with a (short) hackathon. Some company groups were formed. Together with Peter Fabricius I joined the people from Cipal (or they joined us). We did not get an assignment so we have to come up with something nice ourselves. Our first thought was to do ‘something’ with Philae (the lander who just started sending information form the comet “Churyumov-Gerasimenko“). We searched for some data, but we could not find anything useful.

So we decided to take a subject closer to home and wondered if we could map the locations of the PCM14 participants. We already had a kettle transformation to get the location data from Facebook pages(city, country), parse it to a geocoding service to get the latitude and longitude and save it to a gpx file. It was based on some work Peter did for German rally teams to the Orient. We ‘only’ need to adjust it to our needs and we need data to request the Facebook company page of the participants.

From Bart we got a list of the email addresses of the participants (it has advantages that you are part of a semi Belgium team and one of the team members was actually working on Bart his machine ;-)). We were able to grap the domain name without country code using Libre Office (sorry we only had an hour to code) and tried to feed it to the Facebook Graph API. It is basically just a http client step to get the info from eg http://graph.facebook.com/pentaho. This results in the company page in a nice json format (Unfortunately(?) the Graph API does not return the location for normal ‘users’ with this method). One request broke the kettle transformation (some strange error), so we removed that organization.

Facebook returned the country name, but the geocoding tool needed the 2-character country code. Because Peter had only German teams, he just added GE, but of course this was not an option for us. Fortunately we had a databases with the country-isocode translation. So we could feed the geocoding service with the right data and this also returns some nice json.
After about 37 requests we got an error: no content is allowed before the prolog (or something like that). Damn we reach some rate limiting….  So we need delayed each request a second to get all the results. The first run we did not get all the results. Why? we don’t know…

In the mean time Peter and ‘uh I forgot his name’ were busy trying to get the bi-server installed and prepare a dashboard with a map, which should read a kettle transformation step and plotting the participants. They had also some issues, but……

It was time for the presentations…. At that point we did not have anything to show…. No results of the kettle transformation, no map….. During the setup of one of the presentations I run the kettle transformations again and hooray I get a GPX file. It contains 9 locations of the participants (we had about 55 different companies in our list). Since we did not have the map ready, we could not present it using the bi-server. But also in this case ‘Google was our friend’. Uploading it to Google drive, using preview content (using My GPX Reader (it took some clicks) we were able to show it to the public.

On my way to podium I noticed Facebook also returns the latitude and longitude. So we did not need to use the detour via the geocoding service 🙁

pcm14-hackathon-map

After al presentations were made, the jury discussed the products and presentations and we won!!! (as did all the other teams). We got some nice raspberry PI B+. In case you don’t know what it is: Basically it is a hand sized desktop computer with no case and a lot of connectors…

Thanks Bart and Matt for organizing this hackathon!!!

Edit: By request I added a sample input file. I also changed it to read csv: facebook_locations