Dit is een site voor studenten van de Open Universiteit. Voordat je een vraag kunt stellen moet je even een account aanmaken (dit systeem is niet gekoppeld aan je OU studentnummer en wachtwoord).

Welkom bij het vraag- en antwoord systeem van de onderzoeks-practica van de studie psychologie bij de Open Universiteit.

Houd er, als je een vraag stelt, rekening mee dat je de richtlijnen volgt!

Waarom heeft mijn data geen variabelenamen als ik die inlees in LimeSurvey?

0 leuk 0 niet-leuks

Wanneer ik in de R console dit commando intype:

dat.raw <- getData()

dan krijg ik de melding dat ik de specifieke file moet openen, waarna de map opent waar al de mappen van R instaan. Ik kan hier navigeren naar de map met mijn datafile, en als ik die originele datafile aanklik (survey_239764_R_data_file.csv), verschijnt dat.raw in de Environment rechts boven. Het probleem is echter dat deze data frame geen variabelenamen bevat zoals 'data' dat wel heeft. Mijn gedacht is dat dit komt omdat de syntax niet meegenomen wordt.

In de plaats van de originele data file (survey_239764_R_data_file.csv) , was ik de file aan het zoeken van de dataframe 'data' met variabelenamen. Het probleem is echter dat ik die file nergens kan vinden in mijn PC.

gevraagd 22 december 2016 in Online vragenlijsten door Gjalt-Jorn Peters (41,060 punten)

1 Antwoord

0 leuk 0 niet-leuks

Je analyse van het probleem klopt.

De data die je download uit LimeSurvey bestaat steeds uit twee bestanden. Of je nu SPSS of R gebruikt, je moet altijd zowel de data (meestal met extensie ".csv", voor Comma Separated Values) als het script om de data in te lezen (voor R met de extensie .R, voor SPSS met de extensie .SPS) opslaan.

In R (of SPSS) voer je dan die laatste uit. Omdat je vraag over R gaat leg ik hier niet verder uit hoe dit met SPSS kan. Met R moet je zorgen dat je de goede Working Directory hebt ingesteld. Dit kan bijvoorbeeld met:

setwd(choose.dir(getwd()));

R opent dan een dialoogje waarmee je een directory (map, folder) kunt selecteren. Doordat er als argument voor choose.dir (de functie die het dialoogje laat zien en de geselecteerde directory doorgeeft aan setwd, die de geselecteerde directory vervolgens instelt als working directory) de functie getwd wordt meegegeven, start het dialoogje in de huidige working directory. Welke dat is kun je dus ook checken met:

getwd();

Voordat je de working directory uberhaupt aan gaat passen: misschien hoeft het niet, want misschien staan de datafile (de .csv file) en de script file (de .R file) al in die directory.

Als je de juiste working directory hebt geselecteerd, kun je de script file in R in je script uitvoeren met:

source('filename.R');

Verander daar (vanzelfsprekend) filename.R in de juiste bestandsnaam, dus het bestand dat je uit LimeSurvey hebt gedownload.

R laadt dan dat script in en voert het uit. Daarna gaat R verder met jouw script. Dit is dus sowieso een handige methode om je scripts overzichtelijk te houden: je kunt bijvoorbeeld je datacleaning in een ander script plaatsen dan je uiteindelijke analyses, als je wil.

Tot slot: je kunt ook zonder Working Directory werken door rechtstreeks het juiste pad te specificeren in het source commando. Zie voor meer informatie http://oupsy.nl/help/129/verwijs-goede-manier-naar-een-bestand-spss-syntax-een-script

Je download die data en script bestanden trouwens bij 'Responses & Statistics':

En dan naar 'Export results to application':


En dan de juiste bestanden downloaden:


Je moet dus zowel de R 'syntax file' (dat moet eigenlijk 'script file' zijn: 'syntax' is de naam voor de script-taal van SPSS, in R heet die gewoon R) als de R data file downloaden. Zet die in dezelfde directory. Dat is dus de directory die je ofwel in het pad moet plaatsen als je source gebruikt, of die je met setwd als working directory moet instellen, als je in je source commando geen pad specificeert (want dan zoekt hij in je working directory).

Overigens, vergeet niet om, als je dataverzameling is afgerond, in LimeSurvey je vragenluist te 'expiren':

Je kunt kiezen tussen 'expiren' (laten verlopen) of deactiveren: kies voor expiren, want dan kun je je data nog downloaden.

Stuur bovendien op dat moment je ruwe data (zowel de .csv als de .R file) naar je eerste begeleider. Als je data niet anoniem is verzamelt, handel dan volgens je datamanagementplan (volg de procedures om de data te anonimiseren en stuur je begeleider dan de geanonimiseerde datafile; en meestal bewaar je de ruwe, ongeanonimiseerde datafile in een zwaar versleuteld archief, bijvoorbeeld een 7-zip file met 256-bits AES encryption, en die moet je dan ook aan je eerste begeleider sturen, en degenene die het wachtwoord moeten krijgen volgens je datamanagement plan, het wachtwoord sturen).

Exporteer ook een Survey Archive (.lsa bestand) en een gewone survey export (.lss bestand), en een printbare versie van de survey, zodat je die kunt archiveren. Voor het Survey Archive geldt dat de ongeanonimiseerde data er in staan, dus versleutel die op dezelfde manier als je andere ongeanonimiseerde datafile.

beantwoord 22 december 2016 door Gjalt-Jorn Peters (41,060 punten)
bewerkt 22 december 2016 door Gjalt-Jorn Peters
...