Composite scores bilden mit scoreItems() Befehl

Allgemeine Statistik mit R, die Test-Methode ist noch nicht bekannt, ich habe noch keinen Plan!

Moderatoren: EDi, jogo

Antworten
alina222
Beiträge: 6
Registriert: Sa Jun 22, 2019 5:56 pm

Composite scores bilden mit scoreItems() Befehl

Beitrag 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
Benutzeravatar
EDi
Beiträge: 1599
Registriert: Sa Okt 08, 2016 3:39 pm

Re: Composite scores bilden mit scoreItems() Befehl

Beitrag 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?
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.

Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
Bild.
alina222
Beiträge: 6
Registriert: Sa Jun 22, 2019 5:56 pm

Re: Composite scores bilden mit scoreItems() Befehl

Beitrag 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
Antworten