Heel goed dat het is gelukt!
Ik zal de foutmeldingen even helpen duiden:
> dat.clean$intentions_item1 <- as.numeric(substr(dat.clean$Intentions_Intentions1), 2, 2);
Error in substr(dat.clean$Intentions_Intentions1) :
argument "start" is missing, with no default
De haakjes staan verkeerd: je geeft 'substr' nu maar 1 argument mee, en die hoort de '2, 2' ook te krijgen - die geef je nu aan 'as.numeric'.
> dat.clean$intentions_item1 <- as.numeric(substr(dat.clean$Intentions_Intentions1, 2, 2));
Warning message:
NAs introduced by coercion
HHier ging het goed - alleen komen er kennelijk waarden voor die niet om te zetten zijn naar getal, en dus 'coerced' worden naar missing (NA). Het kan zijn dat je in deze variabele de waarden (A1, A2, etc) al had omgezet in de labels (<<<, <<, etc). In dat geval werkt het truukje natuurlijk niet meer.
> dat.clean$intentions_item1 <- as.numeric(substr(trimws(dat.clean$Intentions_Intentions1), 2, 2);
Error: unexpected ';' in "dat.clean$intentions_item1 <- as.numeric(substr(trimws(dat.clean$Intentions_Intentions1), 2, 2);"
Hij zegt een onverwachte puntkomma tegen te komen. En terecht - je hebt te weinig haakjes afgesloten. Je zit dus nog midden in een commando.
> dat.clean$intentions_item1 <- as.numeric(substr(dat.clean$Intentions_Intentions1, 2, 2);
Error: unexpected ';' in "dat.clean$intentions_item1 <- as.numeric(substr(dat.clean$Intentions_Intentions1, 2, 2);"
En dit is dezelfde als de vorige: hij verwacht de puntkomma nog niet, omdat je nog halverwege je commando bent.
Tot slot: 'trim' herkent hij alleen als je 'userfriendlyscience' eerst hebt geladen met 'require'. Maar, trimws doet inderdaad hetzelfde, dus die kun je ook gebruiken!