Welcome to the LimeSurvey Community Forum

Ask the community, share ideas, and connect with other LimeSurvey users!

Skalen in LimeSurvey bilden

  • hannlo
  • hannlo's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
6 months 2 days ago #251452 by hannlo
Skalen in LimeSurvey bilden was created by hannlo
Ihre LimeSurvey-Version: Version 5.3.30+220808
Eigener Server oder LimeSurvey-Cloud: ?
Genutzte Designvorlage: ?
==================
Hallo zusammen,

zur Zeit schreibe ich eine Forschungsarbeit und brauche das Wissen auch für meinen Hiwi-Job! Es geht darum, dass ich Skalen in Limesurvey bilden will. Ich habe selbst schon ein wenig recherchiert und konnte eine Lösung finden, um Skalen über meine einzelnen Fragen in Limesurvey zu bilden. Das Ganze funktioniert bei mir zur Zeit aber nur, wenn ich Items im Summenwert mit einem Plus addiere:  {UGDSGS_1 + UGDSGS_3 + UGDSGS_4 + UGDSGS_5}

Das Problem ist, dass ich andere Skalen bilden muss, wo einzelne Werte umgepolt werden sollen. Da habe ich es mit dieser Lösung versucht, was aber immer den falschen Wert ausspuckt: 

{sum(UGDSMF_1,UGDSMF_2,(6-UGDSMF_3),UGDSMF_4, UGDSMF_5,UGDSMF_6,(6-UGDSMF_7),(6-UGDSMF_8), (6-UGDSMF_9),UGDSMF_10, UGDSMF_11,UGDSMF_12)}

Ich dachte durch das in Klammernsetzen von (6 - ...) könnte ich es in der Gleichung umpolen, aber scheinbar geht das nicht. Kann mir jemand sagen, wo mein Fehler liegt?

Bei anderen Skalen würde ich gerne den Mittelwert bilden und habe da an folgende Lösung gedacht:

{sum(PETAS_2 /6, PETAS_3 /6, PETAS_5 /6, PETAS_7 /6, PETAS_9 /6, PETAS_11 /6)}

Kann mir jemand sagen, wie ich den Mittelwert bilden kann, bzw. ob das überhaupt möglich ist.

Vielen Dank!

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
6 months 2 days ago #251457 by Joffm
Replied by Joffm on topic Skalen in LimeSurvey bilden
Hallo,
auf die Schnelle - ich bin etwas knapp in der Zeit:

Lies einmal dies - meinetwegen auch den ganzen Thread
[url] forums.limesurvey.org/forum/german-forum...on-limesurvey#223552 [/url]

Wichtig: Die Variablen "self" und "that" - siehe Handbuch.
Gerade bei solchen Dingen wie reversen Items kann man damit und mit geschickter Codierung eine Menge Arbeit sparen.

Für eine ausführlichere Hilfe schicke bitte den lss Export eines Prototypen, also nur die relevanten Fragen, nicht das gesamte Werk.

Bis dann
Joffm
 

Volunteers are not paid.
Not because they are worthless, but because they are priceless

Please Log in to join the conversation.

  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
6 months 2 days ago #251461 by holch
Replied by holch on topic Skalen in LimeSurvey bilden
Und hier kann man auch den Assessment mode anschalten und dann den Skalen-Werten jeweils einen Assessmentwert geben. Du kannst z.B. in der Skala den Wert 1 vergeben und anzeigen lassen, dann aber im Assessment-Wert 5 vergeben. Dann greifst du per Qcode.value eben auf den Assessmentwert zu, nicht den Antwortcode.

Oder, du kannst die Skala eben zwar mit 1, 2, 3, 4, 5 beschriften, aber den Code eben 5, 4, 3, 2, 1 vergeben.

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

Please Log in to join the conversation.

  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
6 months 2 days ago #251462 by holch
Replied by holch on topic Skalen in LimeSurvey bilden
Wenn ich von Assessmentwerten rede, dann meine ich wirklich nur die Vergabe der Werte und dann kann man mit diesen Werten in Equation Fragen weiterarbeiten.

Den Assessmentmodus würde ich sonst nicht verwenden und ignorieren. Aber die Möglichkeit Assessmentwerte zu vergeben kann manchmal nützlich sein, um die Formeln einfacher zu halten.

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
6 months 2 days ago #251469 by Joffm
Replied by Joffm on topic Skalen in LimeSurvey bilden

Oder, du kannst die Skala eben zwar mit 1, 2, 3, 4, 5 beschriften, aber den Code eben 5, 4, 3, 2, 1 vergeben

Schon, aber nicht innerhalb einer Matrix.
Wenn ein Item lautet:
"Ich lüge gern" 
und das andere
"Ich sage gerne die Wahrheit"

Joffm
 

Volunteers are not paid.
Not because they are worthless, but because they are priceless

Please Log in to join the conversation.

  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
6 months 2 days ago #251470 by holch
Replied by holch on topic Skalen in LimeSurvey bilden
Stimmt Joffm. Hatte aber nix von Matrix-Fragen gelesen. Die Codes lassen aber darauf schliessen, dass es sich vermutlich um Matrix-Fragen handelt, so genau hatte ich mir das dann nicht angesehen. :-)

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
6 months 2 days ago #251474 by Joffm
Replied by Joffm on topic Skalen in LimeSurvey bilden
So, hier also eine allgemeine Lösung für den Mittelwert (2 Kommastellen) einer Matrix mit teilweise inversen Items.
"Normale" Teilfragen mit den Codes "N01", "N03", "N04",...
"Reverse" Teilfragen mit den Codes "R02", "R05",...

{round(sum(sum(that.Q1.sq_N.NAOK),sum(6*count(that.Q1.sq_R.NAOK),-1*sum(that.Q1.sq_R.NAOK)))/count(that.Q1.NAOK),2)}
 

Sollte es sich um eine Pflichtfrage handeln, muss man die beantworteten Teilfragen nicht zählen und kann dies hart coden.
{round(sum(sum(that.Q1.sq_N.NAOK),sum(12,-1*sum(that.Q1.sq_R.NAOK)))/6,2)}

Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless

Please Log in to join the conversation.

  • hannlo
  • hannlo's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
5 months 4 weeks ago #251626 by hannlo
Replied by hannlo on topic Skalen in LimeSurvey bilden
Lieber Joffm,

danke für deine Antworten! Ich werde es mal versuchen. Allerdings bin ich neu bei LimeSurvey und finde die Codes recht kompliziert. Es handelt sich um eine Pflicht Fragenmatrix, also nutze ich ja diesen Code:

{round(sum(sum(that.Q1.sq_N.NAOK),sum(12,-1*sum(that.Q1.sq_R.NAOK)))/6,2)}

An welche Stelle packe ich meine einzelnen Items in den Code? Wo sehe ich welche umgepolt werden?

Danke.

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
5 months 4 weeks ago - 5 months 4 weeks ago #251633 by Joffm
Replied by Joffm on topic Skalen in LimeSurvey bilden
Hallo,

Wo sehe ich welche umgepolt werden?

Wie?
Du weißt doch, welche Items revers sind.
Und dies hatte ich ja als Erklärung geschrieben.
"Normale" Teilfragen mit den Codes "N01", "N03", "N05",...
"Reverse" Teilfragen mit den Codes "R02", "R04",...

Als Lektüre dazu:
Handbuch ExpressionScript, speziell
Implementierte Funktionen
[url] manual.limesurvey.org/ExpressionScript_-...mplemented_functions [/url]
that
[url] manual.limesurvey.org/ExpressionScript_-...#.22That.22_variable [/url]
Und meinetwegen mein Tutorial 4: Gleichungen, Zufall,..., Kap. 1.3.1.
[url] forums.limesurvey.org/forum/german-forum...ungen,-zufall#240746 [/url]

Dann solltest Du einfach einmal eine Frage vom Typ "Textanzeige" anlegen, in welcher Du die verschiedenen Beispiel aus dem Handbuch ausprobierst und dann neue, eigene kreierst.
In der Frageübersicht siehst Du ja sehr gut, wie diese Konstrukte mit "that" aufgelöst werden.

Und wenn Du einmal diese Formel aufdröselst, wird sie ganz einfach.
Hier wird stillschweigend angenommen, dass es eine Skala von 1-5 ist; daher wird eine reverses Item durch (6-Wert) berechnet.

Ich werde diese Formel einmal umgekehrt konstruieren.
Wie würde man vorgehen?
  • Man addiert alle "Normalen" Items.
  • Dazu addiert man alle "Inversen" Items, indem man deren Wert von 6 abzieht.
  • Danach dividiert man die Summe durch die Anzahl der Items als Mittelwert.
  • Man rundet diesen auf die gewünschte Stellenzahl.

Also
Man addiert alle "Normalen" Items.
Normal1 + Normal3 + Normal5 + Normal6

Dazu addiert man alle "Reversen" Items, indem man deren Wert von 6 abzieht.
Normal1 + Normal3 + Normal5 + Normal6 + (6- Revers2) + (6-Revers4)

Danach dividiert man die Summe durch die Anzahl der Items als Mittelwert.
(Normal1 + Normal3 + Normal5 + Normal6 + (6- Revers2) + (6-Revers4)) / 6

Man rundet diesen auf die gewünschte Stellenzahl.
round((Normal1 + Normal3 + Normal5 + Normal6 + (6 - Revers2) + (6 -Revers4)) / 6 , 2)

Und jetzt kommt ein bisschen Schulmathematik
round((Normal1 + Normal3 + Normal5 + Normal6 + (6 - Revers2) + (6 - Revers4)) / 6 , 2)
round((Normal1 + Normal3 + Normal5 + Normal6 + (6 + 6) - (Revers2 + Revers4)) / 6 , 2)
round((Normal1 + Normal3 + Normal5 + Normal6 +   12 - (Revers2 + Revers4)) / 6 , 2)

Und nun die Benutzung der that-Variablen
sum(that.Q1.sq_N) summiert alle Teilfragen deren Code ein "N" enthält
sum(that.Q1.sq_R) summiert alle Teilfragen deren Code ein "R" enthält
round((sum(that.Q1.sq_N.NAOK) +   12 - sum(that.Q1.sq_R.NAOK)) / 6 , 2)

Man erkennt also, dass diese "12" daraus resultiert, dass es 2 revese Items gibt.

Jetzt werden diese drei Einzelsummanden noch einmal mit der Summenfunktion aufsummiert
round(sum(sum(that.Q1.sq_N.NAOK),12, -1*sum(that.Q1.sq_R.NAOK)) / 6 , 2)

Und schon sind wir am Ende.

Im Falle von Pflichtfragen ist "NAOK" eigentlich nicht notwendig.
Bei anderen aber unerlässlich, da ansonsten die Summe - im Falle eines fehlenden Wertes - undefiniert sein würde.

Natürlich kannst Du dies alles auch lassen und die Summanden einmzeln hinschreiben.
Aber mit dieser Formel (und besonders mit der für generelle Fälle) geht es sicherlich schneller.

Joffm

P.S.

finde die Codes recht kompliziert

Codes sind nur kompliziert, wenn Du sie kompliziert machst. Ich fonde diese Vorgabecodes auch ziemlich lästig.
In Deinen Konto-Einstellungen (oben rechts) kannst Du dies aber ändern.
 
Ich persönlich nutze gerne
G1, G2, G3,... für Gruppen
Q1, Q2,... oder F1, F2,... für Fragen
Y001, Y002, und X001, X002 für die zwei Achsen einer Matrix(Texte)
Ansonsten numerische Codes für Teilfragen oder Antwortoptionen.

Ausnahmen siehe oben: Wenn es aus bestimmten Gründen sinnvoll ist, Teilfragen mithilfe geschickter Kodierung kenntlich zu machen.
 

Volunteers are not paid.
Not because they are worthless, but because they are priceless
Last edit: 5 months 4 weeks ago by Joffm.
The following user(s) said Thank You: hannlo

Please Log in to join the conversation.

  • hannlo
  • hannlo's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
5 months 2 weeks ago #251840 by hannlo
Replied by hannlo on topic Skalen in LimeSurvey bilden
Vielen lieben Dank für deine Mühe! Das hat geholfen!

Please Log in to join the conversation.

Moderators: Joffm

Lime-years ahead

Online-surveys for every purse and purpose