Seite 1 von 1

Composite scores bilden mit scoreItems() Befehl

Verfasst: So Jun 30, 2019 9:27 pm
von alina222
Hallo,

ich möchte für meinen Datensatz Variablen zu Skalen zusammenfügen über Composite scores, wie in folgendem Projekt beschrieben:
https://personality-project.org/r/psych ... coring.pdf

Die Befehle aus diesem R-skript sind folgende:

Code: Alles auswählen

another.keys.list <- list(EA=c(1:3,-4,-5,-6),TA=c(7:9,-10,-11,-12),
EAp =1:3,EAn=4:6,TAp =7:9,TAn=10:12)
my.scales <- scoreItems(my.keys.list,my.data)
Ich habe diese Befehle auf meinen Datensatz übertragen.
Mein Datensatz besteht aus einem Probandencode, verschiedenen demographischen Variablen und 48 Variablen die zu Skalen zusammengefügt werden sollen.
Ich habe 6 Themenblöcke und pro Themenblock je 2 verschiedene Perspektiven. Also insgesamt 12 Skalen aus je 4 Variablen sollen gebildet werden.
Meine Variablen sind jedoch dichotom, ich habe also immer 0 und 1 und auch einiges an Missings.

Ich habe folgenden Code verwendet:

Code: Alles auswählen

scoring.list <- list(SAF=c(39,41,43,45),SAT=c(38,40,42,44),PNDF = c(47,49,51,53),PNDT=c(46,48,50,52),PIDF = c(55,57,59,61),PIDT=c(54,56,58,60),PKDF=c(63,65,67,69),PKDT=c(62,64,66,68),CrispF= c(71,73,75,77),CrispT= c(70,72,74,76),KBF= c(79,81,83,85),KBT= c(78,80,82,84))
Erstmal die Frage: Habe ich das richtig verstanden, dass die Nummern hier jeweils die Position/Spalte der Variable im Datensatz repräsentieren?
Die erstellung der Liste funktioniert.

Code: Alles auswählen

my.scales <- scoreItems(scoring.list,df)
Bei dem scoreItems() Befehl kommt dann folgende Fehlermeldung:
Error in `[<-`(`*tmp*`, abs(list.i), i, value = sign(list.i)) :
subscript out of bounds
Hat jemand eine Idee woher das kommen könnte/wie man das beheben kann?

Ich habe schon überlegt ob es daran liegen könnte, dass ich einen Datensatz und keine Matrix verwende und habe den Datensatz mit dem

Code: Alles auswählen

df_m <- as.matrix(df)
Befehl in eine Matrix umgewandelt, dies behebt jedoch nicht die Fehlermeldung.
Ich habe auch an die Missings gedacht und sie versucht mit folgendem Befehl mit einzubeziehen:

Code: Alles auswählen

my.scales <- scoreItems(scoring.list,df_neu,missing = TRUE, impute = "none")
Das hat aber die selbe Meldung wie oben produziert...

Vielen Dank schonmal für Hilfe!
Alina

Re: Composite scores bilden mit scoreItems() Befehl

Verfasst: So Jun 30, 2019 11:13 pm
von EDi
Hat jemand eine Idee woher das kommen könnte/wie man das beheben kann?
Ohne ein reproduzierbares Beispiel habe ich leider keine Ideen.


Passen die indices zu df?

Re: Composite scores bilden mit scoreItems() Befehl

Verfasst: Mo Jul 01, 2019 6:08 pm
von alina222
Hallo Edi,

ich habe jetzt einen reduzierten Datensatz nur mit den Variablen, welche zusammengefasst werden sollten erstellt (damit nicht mein kompletter Datensatz samt Demographischem frei verfügbar ist) und wollte den jetzt hochladen.

Damit habe ich es nochmal probiert und es hat geklappt.
Es muss also wohl ein Datensatz sein, welcher nur die Zielvariablen enthält und nicht noch Demographisches oder einen VPN Code.

Danke für deine Hilfe!
Alina