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!

0 leuk 0 niet-leuks

Het lukt me niet om in R een dummy te maken van de variabele gender, om vervolgens een regressie-analyse te doen.

Dit is wat ik heb geprobeerd:

dat.clean\$gender_R <- recode(dat.clean\$gender, "'Man'=-0.5;'Vrouw'=0.5");

-> dit lukt: ik krijg -0.5 voor Man en 0.5 voor Vrouw. Dan doe ik het volgende:

dat.clean\$gender_D <- as.numeric(dat.clean\$gender_R);

-> nu verschijnt er echter 1 voor Man en 2 voor Vrouw.

Ook heb ik dit geprobeerd:

dat.clean\$gender_D <- dummy.code(dat.clean\$gender)

-> nu krijg ik echter 2 variabelen; gender_D.Man en gender_D.Vrouw

As ik deze 2 variabelen bijeen zou kunnen voegen tot 1 variabele, dan ben ik er wel (denk ik).

Ik vind dit probleem wel terug online op de site stackoverflow, maar begrijp de oplossing niet.

in Methodologie door (240 punten)
bewerkt door

1 Antwoord

0 leuk 0 niet-leuks

Ah, dat is inderdaad een lastig probleem. Of, nou ja, lastig - je moet het even weten.

Kijk, als je een factor als 'numeric' inleest, dan pakt hij in eerste instantie de numerieke representatie van de factorlevels. Die hoeven immers in de labels helemaal geen numerieke waarden te hebben. En die numerieke representaties van je levels -0.5 en 0.5 zijn 1 en 2.

Er zijn allerlei oplossingen; de makkelijkste is wsch convertToNumeric uit userfriendlyscience, die ik precies hiervoor heb geschreven.

Je kunt ook as.character gebruiken om te zorgen dat gender geen factor meer is (zie de help pagina van ?as.numeric in R).

door (77.8k punten)
...