vorab: ich bin ein ziemlicher Neuling in R und versuche derzeit aus einem Datensatz die Variablen zu bilden.
Nach einer erfolgreichen Faktorenanalyse habe ich etliche Items, aus denen ich die Produktsumme bilde.
Die Skala reicht von 1 bis 5 und hier genau entsteht das Problem. Wenn ich die Produktsumme bilde, reicht die Skala bis 225. Das ist für die spätere Analyse ungünstig.
Daher hatte ich folgenden Code generiert, aber irgendwie klappt das nicht so ganz und ich weiß nun echt nicht mehr weiter.
Zuerst habe ich das probiert:
Idee 1:
Zuerst die Produktsumme gebildet
Code: Alles auswählen
daten_sclean$physindex2 <- as.factor((daten_sclean$incphys_2a * daten_sclean$incphys_3a)
+ (daten_sclean$incphys_2b * daten_sclean$incphys_3b)
+ (daten_sclean$incphys_2c * daten_sclean$incphys_3c)
+ (daten_sclean$incphys_2d * daten_sclean$incphys_3d)
+ (daten_sclean$incphys_2e * daten_sclean$incphys_3e)
+ (daten_sclean$incphys_2f * daten_sclean$incphys_3f)
+ (daten_sclean$incphys_2g * daten_sclean$incphys_3g)
+ (daten_sclean$incphys_2h * daten_sclean$incphys_3h)
+ (daten_sclean$incphys_2i * daten_sclean$incphys_3i))
Code: Alles auswählen
daten_sclean$physindex22 <- as.factor(ifelse(daten_sclean$physindex2 <= 225, 5,
ifelse(daten_sclean$physindex2 <= 180, 4),
ifelse(daten_sclean$physindex2 <= 135, 3),
ifelse(daten_sclean$physindex2 <= 90, 2),
ifelse(daten_sclean$physindex2 <= 45, 1, 0)))
-----
leider error..
Error in ifelse(daten_sclean$physindex <= 225, 5, ifelse(daten_sclean$physindex <= :
unused arguments (ifelse(daten_sclean$physindex <= 135, 3), ifelse(daten_sclean$physindex <= 90, 2), ifelse(daten_sclean$physindex <= 45, 1, 0))
----
so ging es leider auch nicht
-------------
dritte Variante, wollte ich folgendes ausprobieren:
Code: Alles auswählen
daten_sclean$physindexnum3 <- ifelse(daten_sclean$physindex2 <=45, 1, ifelse(daten_sclean$physindex2 <=90, 2,
daten_sclean$physindex2 <=135, 3,
daten_sclean$physindex2 <=180, 4, 5)) %>%
ordered(levels = c("1", "2", "3", "4", "5"))
In Ops.factor(daten_sclean$physindex2, 45) :
‘<=’ ist nicht sinnvoll für Faktoren
---------------------
dann habe ich es noch so probiert. Skala reichte bis 225, bin dann schrittweise runter gegangen
Code: Alles auswählen
daten_sclean$physindex <- as.factor(ifelse((daten_sclean$incphys_2a * daten_sclean$incphys_3a)
+ (daten_sclean$incphys_2b * daten_sclean$incphys_3b)
+ (daten_sclean$incphys_2c * daten_sclean$incphys_3c)
+ (daten_sclean$incphys_2d * daten_sclean$incphys_3d)
+ (daten_sclean$incphys_2e * daten_sclean$incphys_3e)
+ (daten_sclean$incphys_2f * daten_sclean$incphys_3f)
+ (daten_sclean$incphys_2g * daten_sclean$incphys_3g)
+ (daten_sclean$incphys_2h * daten_sclean$incphys_3h)
+ (daten_sclean$incphys_2i * daten_sclean$incphys_3i) <=225, 5,
(ifelse((daten_sclean$incphys_2a * daten_sclean$incphys_3a)
+ (daten_sclean$incphys_2b * daten_sclean$incphys_3b)
+ (daten_sclean$incphys_2c * daten_sclean$incphys_3c)
+ (daten_sclean$incphys_2d * daten_sclean$incphys_3d)
+ (daten_sclean$incphys_2e * daten_sclean$incphys_3e)
+ (daten_sclean$incphys_2f * daten_sclean$incphys_3f)
+ (daten_sclean$incphys_2g * daten_sclean$incphys_3g)
+ (daten_sclean$incphys_2h * daten_sclean$incphys_3h)
+ (daten_sclean$incphys_2i * daten_sclean$incphys_3i) <=180, 4,
(ifelse((daten_sclean$incphys_2a * daten_sclean$incphys_3a)
+ (daten_sclean$incphys_2b * daten_sclean$incphys_3b)
+ (daten_sclean$incphys_2c * daten_sclean$incphys_3c)
+ (daten_sclean$incphys_2d * daten_sclean$incphys_3d)
+ (daten_sclean$incphys_2e * daten_sclean$incphys_3e)
+ (daten_sclean$incphys_2f * daten_sclean$incphys_3f)
+ (daten_sclean$incphys_2g * daten_sclean$incphys_3g)
+ (daten_sclean$incphys_2h * daten_sclean$incphys_3h)
+ (daten_sclean$incphys_2i * daten_sclean$incphys_3i) <=135, 3,
(ifelse((daten_sclean$incphys_2a * daten_sclean$incphys_3a)
+ (daten_sclean$incphys_2b * daten_sclean$incphys_3b)
+ (daten_sclean$incphys_2c * daten_sclean$incphys_3c)
+ (daten_sclean$incphys_2d * daten_sclean$incphys_3d)
+ (daten_sclean$incphys_2e * daten_sclean$incphys_3e)
+ (daten_sclean$incphys_2f * daten_sclean$incphys_3f)
+ (daten_sclean$incphys_2g * daten_sclean$incphys_3g)
+ (daten_sclean$incphys_2h * daten_sclean$incphys_3h)
+ (daten_sclean$incphys_2i * daten_sclean$incphys_3i) <=90, 2,
(ifelse((daten_sclean$incphys_2a * daten_sclean$incphys_3a)
+ (daten_sclean$incphys_2b * daten_sclean$incphys_3b)
+ (daten_sclean$incphys_2c * daten_sclean$incphys_3c)
+ (daten_sclean$incphys_2d * daten_sclean$incphys_3d)
+ (daten_sclean$incphys_2e * daten_sclean$incphys_3e)
+ (daten_sclean$incphys_2f * daten_sclean$incphys_3f)
+ (daten_sclean$incphys_2g * daten_sclean$incphys_3g)
+ (daten_sclean$incphys_2h * daten_sclean$incphys_3h)
+ (daten_sclean$incphys_2i * daten_sclean$incphys_3i) <=45, 1,0
))))))))))
5
2182
-------------------------------------------------------------------------------
Ich wäre so dankbar, wenn mir jemand hierzu weiterhelfen kann
LG Maffi