Hallo,
gibt es eine elegante Möglichkeit Items (Likert Skala von 1 -5) zu invertieren?
Danke Gruß Martin
Items invertieren
Re: Items invertieren
Hallo!
Man kann zum Beispiel den Skalenwert von 6 abziehen.
6 - 1 = 5
6 - 2 = 4
usw
6 - 5 = 1
Eleganter wäre es natürlich noch, dafür eine Funktion zu schreiben. Etwa so:
funktioniert so:
Noch eleganter wäre es, einige Tests für diese Funktion zu schreiben, so dass man sich bei zukünftigen Änderungen daran schnell der korrekten Ergebnisse vergewissern kann. Aber das wäre vielleicht ein bisschen viel Eleganz, für die einfache Aufgabe.
LG,
Bernhard
Man kann zum Beispiel den Skalenwert von 6 abziehen.
6 - 1 = 5
6 - 2 = 4
usw
6 - 5 = 1
Eleganter wäre es natürlich noch, dafür eine Funktion zu schreiben. Etwa so:
Code: Alles auswählen
invertItem <- function(items, maxvalue = 5, minvalue = 1){
if(!is.numeric(items)) stop("items must be numeric!")
if(!is.numeric(maxvalue)) stop("maxvalue must be numeric!")
if(!is.numeric(minvalue)) stop("minvalue must be numeric!")
if(minvalue >= maxvalue) warning("Warning in invertItem: minvalue >= maxvalue")
return((maxvalue+minvalue) - items)
}
Code: Alles auswählen
> invertItem(c(1, 2, 3, 4, 5))
[1] 5 4 3 2 1
> invertItem(c(1, 2, 3, 4, 5, 6), maxvalue = 6)
[1] 6 5 4 3 2 1
> invertItem(-3:3, 3, -3)
[1] 3 2 1 0 -1 -2 -3
> invertItem("A", "B", "C")
Error in invertItem("A", "B", "C") : items must be numeric!
> invertItem(c(1,5,NA, NA, Inf, -Inf, NaN))
[1] 5 1 NA NA -Inf Inf NaN
LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
-
- Beiträge: 78
- Registriert: Fr Dez 08, 2017 6:42 am
Re: Items invertieren
Ah , das is super. vielen Dank Bernhard.
grüße Martin
grüße Martin