Welcome to the LimeSurvey Community Forum

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

Dezimalzahlen in >< Gleichung

More
7 months 4 weeks ago #268448 by nina22
Please help us help you and fill where relevant:
LimeSurvey version: Version 6.8.2+241203
Own server or LimeSurvey Cloud:
Survey theme/template:
==================
(Hallo zusammen,
ich möchte eine kleiner/größer Gleichung erstellen. Dazu habe ich zunächst eine Gleichung erstellt, die den Mittelwert von einer Skala berechnet (s. Bild    ). Dann wollte ich eine Gleichung erstellen, die mir '1' anzeigt, wenn dieser Wert größer 2 ist und '0' wenn der Wert kleiner 2 ist (s. Bild  ). Jedoch funktioniert die Gleichung scheinbar nur mit ganzen Zahlen - also z.B. wenn der Wert 3 erreicht wurde (s. Bild ), jedoch nicht, wenn eine Dezimalzahl wie 3,16 erreicht wurde, wobei diese ja auch größer 2 wäre (s. Bild   ). Ich habe statt der Gleichung if(bepsmean>=2.00,1,0) auch schon die Gleichung if(bepsmean>=2,1,0) probiert. Könnt ihr mir weiterhelfen?
LG, Nina
)

Please Log in to join the conversation.

More
7 months 4 weeks ago #268450 by holch
Replied by holch on topic Dezimalzahlen in >< Gleichung
Am besten ist es bei solchen Fällen immer ein kleines Beispiel als LSS hier anzuhängen, dann kann man sich das genauer anschauen und muss das Konstrukt nicht selbst nach bauen. Das ist nicht nur wichtig, damit wir weniger Arbeit haben (obwohl das natürlich sehr geschätzt wird), sondern auch um genau deine Einstellungen zu haben, denn manchmal liegt der Fehler im Detail.

Wir wollen natürlich nicht deine ganze Studie, sondern nur die relevanten Fragen. Also eintweder ein Beispiel kreiren wo das Problem auftritt, oder deine Umfrage kopieren und alles rauswerfen, was unnötig ist. und dann als LSS exportieren.

Help us to help you!
  • Provide your LS version and where it is installed (own server, uni/employer, SaaS hosting, etc.).
  • Always provide a LSS file (not LSQ or LSG).
Note: I answer at this forum in my spare time, I'm not a LimeSurvey GmbH employee.

Please Log in to join the conversation.

More
7 months 4 weeks ago #268451 by holch
Replied by holch on topic Dezimalzahlen in >< Gleichung
Ein paar Punkte wo ich als erstes hinschauen würde:

1. .value bezieht sich auf den Assessment Value. Das funktoniert nur, wenn du den Assessment Mode an hast und wenn du assessment werte eingetragen hast in der Skala. Das kann natürlich sein, aber viele machen den Fehler und denken .value bezieht sich auf den Antwort code. Der wird aber einfach mit {beps01} ausgegeben, nicht mit {beps01.value}, denn das ist der Assessment value.

2. "+" kann manchmal dazu führen, dass die Zahlen nicht addiert werden, sondern aneinander gehängt, sprich es entsteht keine Zahl, sondern ein Text-String. Wenn ich mir aber den Screenshot ansehe, scheint das nicht das Problem zu sein. Besser ist aber folgendes zu nutzen:
Code:
{sum(besp01, besp02,...)}

3. Eventuell verschluckt sich Limesurvey mit dem Komma und dem Punkt als Trenner. Das wäre für mich zwar ein Bug, aber das kann man ja nicht ausschliessen.

3

Help us to help you!
  • Provide your LS version and where it is installed (own server, uni/employer, SaaS hosting, etc.).
  • Always provide a LSS file (not LSQ or LSG).
Note: I answer at this forum in my spare time, I'm not a LimeSurvey GmbH employee.

Please Log in to join the conversation.

More
7 months 4 weeks ago #268452 by Joffm
Replied by Joffm on topic Dezimalzahlen in >< Gleichung
Danke, dass @holch mir das Meiste abgenommen hat.
Du benutzt ja Bewertungswerte (warum?) und es ist ein Komma als Dezimaltrenner im Screenshot.
Also müssen wir Deine Einstellungen sehen.

Bis dann, nach Deinem lss Export
Joffm 

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

Please Log in to join the conversation.

More
7 months 4 weeks ago #268455 by nina22
Okay das stimmt, anbei die lss Datei :)

Please Log in to join the conversation.

More
7 months 4 weeks ago #268456 by nina22
Danke für die schnelle Antwort. Ich habe tatsächlich den Assesment Modus angeschaltet und deswegen die values verwendet. Das mit der Summenfunktion habe ich gerade versucht und löst das Problem leider auch nicht, genauso wie wenn ich statt der '>2.00' nur ein '>2' ohne Punkt als Dezimaltrenner benutze. Ich habe unten meine lss Datei angehängt, vielleicht hilft die weiter.

Please Log in to join the conversation.

More
7 months 4 weeks ago #268457 by nina22
Problem gelöst! Es lag tatsächlich daran, dass ich in den Einstellungen den Punkt statt dem Komma als Dezimaltrenner umstellen musste! Vielen Dank!

Please Log in to join the conversation.

More
7 months 4 weeks ago #268458 by Joffm
Replied by Joffm on topic Dezimalzahlen in >< Gleichung
Hallo, Nina,
lass mich noch zwei Bemerkungen machen.
1. Komma - Punkt
Es ist hier ein nicht leicht zu durchschauendes Verhalten von LimeSurvey zu erkennen.
Nämlich:
Beim Anzeigen der Gleichungsfrage in derselben Gruppe wird als Dezimaltrenner der in "Textelemente" eingestellte Wert benutzt.
Wird diese Gleichungsfrage in eine andere Gruppe verschoben, wird immer der Punkt benutzt.
In der Datenbank selbst wird der Wert aber immer - richtig - mit Punkt gespeichert.
Es scheint also so zu sein, dass bevor die Gruppe abgeschickt ist (also noch nichts in der Datenbank gespeichert ist), der angezeigte Wert benutzt wird, in späteren Gruppen dann aber der in der Datenbank gespeicherte wert. Das ist auch ziemlich logisch.

2. Bewertungswerte
Ich habe nicht ohne Grund nach dem Grund für deren Benutzung gefragt.
Seit es ExpressionScript gibt - also seit ungefähr 10 Jahren - sind Bewertungswerte nur noch in zwei Situationen nötig.
a. Es soll negative Werte geben
b. Mehrere Optionen sollen denselben Wert erhalten.
Beispielsweise:
 

Du benutzt aber genau die vergebenen Codes. Dann musst Du nicht "doppel-moppeln"
Dann genügt es, den Code zu benutzen, also
{(beps01+beps02+beps03+beps04+beps05+beps06)/6}
Da alle Fragen Pflichtfragen sind, ist auch kein ".NAOK" nötig.

Und obwohl Itembatterien nicht gerne gesehen sind, halte ich diese Einzelfragen-Batterie für noch schlimmer. Hier muss der Teilnehmer ja unnötig scrollen.
Bei sechs Items ist eine Itembatterie auch zu verkraften.
 

Dann ist die Gleichung für den Mittelwert nur noch (sogar für jede beliebige Anzahl Items):
{sum(that.Q1.NAOK)/count(that.Q1.NAOK)}

Joffm
 

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

Please Log in to join the conversation.

More
7 months 4 weeks ago #268460 by nina22
Danke für deine Erklärungen. Bezüglich der Itemmatrix werde ich deine vorgeschlagene Formel einmal ausprobieren, damit die Umfrage übersichtlicher wird! Geht das denn genauso, wenn ich einen Schieberegler machen will mit einer Antwortrange von 0-10? Und dann eine Gleichung daraus mache wie oben. Kann dann der Code genommen werden oder muss man dazu den Assessment Modus benutzen und mit values rechnen(das gibt es für den Schieberegler nämlich leider nicht laut Anleitung)? Ich möchte danach nämlich eine Gleichung machen wie oben die entweder eine 1 anzeigt wenn die Antwort auf dem Regler größer 5 ist oder eine 0 anzeigt, wenn die Antwort kleiner 5 ist. LG

Please Log in to join the conversation.

More
7 months 4 weeks ago - 7 months 4 weeks ago #268461 by Joffm
Replied by Joffm on topic Dezimalzahlen in >< Gleichung
Hallo,
"Assessment" solltest Du einfach aus dem Gedächtnis löschen; das ist seit 10 Jahren veraltet.

Wie schon geschrieben "Der Code kann immer genommen werden außer in den beiden genannten Fällen.
Und auch da benutzt man besser ExpressionScript.

Übrigens können Bewertungswerte bei Slider-Fragen nicht vorhanden sein. Diese gibt es doch nur bei kodierten Fragen; Slider sind aber offene Fragen - vom Typ "mehrfache Zahleingabe". Da werden die Antworten ja als Klarwert direkt eingegeben.

Die gezeigte Berechnung sollte bei einer Slider-Frage identisch sein.
Du siehst ja:
Die "that"-Variable expandiert über alle Teilfragen, die summiert werden, mit "count()" wird gezählt, wie viele Teilfragen beantwortet wurden.
Und "NAOK"? Falls die Frage keine Pflichtfrage ist, würde eine nicht beantwortete Teilfrage die gesamte Summierung "nicht definiert" lassen. Wird durch NAOK verhindert.

Wozu soll überhaupt diese 0/1-Geschichte dienen? Willst Du dies für eine Quote/Screenout benutzen?

Joffm 

 

Volunteers are not paid.
Not because they are worthless, but because they are priceless
Last edit: 7 months 4 weeks ago by Joffm.

Please Log in to join the conversation.

More
7 months 3 weeks ago #268483 by nina22
Hallo,
okay, das mit dem Assessment habe ich verstanden. Genau, ich möchte ein Screening machen und arbeite deswegen mit 1 (Kriterium erfüllt) und 0 (nicht erfüllt) und summiere diese am Ende auf und gebe basierend auf dem Score eine Rückmeldung. Ich möchte nach dem Schieberegler eine Gleichung machen, die ab einer Antwort auf dem Regler von 5 eine '1' anzeigt, sonst eine '0'. Das funktioniert jedoch nicht mit der zuvor benutzen if-Formel, da mir immer angezeigt wird, dass es eine undefinierte Variable ist (Name vom Schieberegler). Ich habe das Beispiel hochgeladen.
LG

Please Log in to join the conversation.

More
7 months 3 weeks ago #268484 by holch
Replied by holch on topic Dezimalzahlen in >< Gleichung
Bitte keine LSG oder LSQ Files, sondern immer LSS.

Erstelle ein neues Beispiel das nur das Problem beinhaltet oder kopiere deine Umfrage und schmeiss alles raus, was unnötig ist.

Warum?

1. Du machst den Helfern im Forum das Leben leichter. Wir beantworten hier meist mehrere Fragen pro Tag. Wenn wir für jede Antwort erst eine Umfrage erstellen müssen um dann deine Fragengruppe (LSG) importieren zu können, nimmt das wertvolle Zeit in Anspruch.

2. LSG und LSQ Files sind sprach sensitiv. Sprich wir müssen eine Umfrage erstellen, die die gleiche Basis-Sprache hat, wie deine, sonst klappt das nicht. Gehe davon aus, dass es in deinem Fall Deutsch wäre. Aber es für Deutsch gibt es ja schon 3 verschiedene Sprachversionen.

3. Die LSG enthält nicht deine allgemeinen Einstellungen der Umfrage, die manchmal eben für die Lösung des Problems entscheidend sein kann.

Help us to help you!
  • Provide your LS version and where it is installed (own server, uni/employer, SaaS hosting, etc.).
  • Always provide a LSS file (not LSQ or LSG).
Note: I answer at this forum in my spare time, I'm not a LimeSurvey GmbH employee.

Please Log in to join the conversation.

More
7 months 3 weeks ago - 7 months 3 weeks ago #268486 by nina22
Anbei die lss!

File Attachment:

File Name: limesurvey...2382.lss
File Size:38.3 KB
Anbei die lss!
Last edit: 7 months 3 weeks ago by nina22.

Please Log in to join the conversation.

More
7 months 3 weeks ago #268489 by Joffm
Replied by Joffm on topic Dezimalzahlen in >< Gleichung
Hallo, Nina,
Du benutzt hier eine Frage vpm Typ "Mehrfache Zahleingabe" als Slider dargestellt.
Und eine solche Frage hat Teilfragen - es soll ja eine mehrfache Eingabe sein.
Also musst Du auch den Wert der Teilfrage abfragen.
{if (VMOCopy2_SQ001 >= 5, 1, 0 )}

Wenn man bei solchen Dingen unsicher ist:
Umfrage aktivieren, ein paar Daten eingeben und die Antworttabelle anschauen.
Da siehst Du genau, was, wie, wo gespeichert wird und wie Du wieder darauf zugreifst.

Und ich habe schließlich nicht "aus Jux und Tollerei" vorgeschlagen, die "that"-Variable zu benutzen.
{sum(that.Q1.NAOK)/count(that.Q1.NAOK)} (hier als Mittelwert einer beliebig langen Matrix)

Diese macht alles kürzer.
Du siehst ja, was passiert, wenn Du einmal
{if (sum(that.VMOCopy2) >= 5, 1, 0 )} in den Fragentext (meinetwegen von VMCopy2 eingibst.
Dort erscheint dann {if (sum(that.VMOCopy2_SQ001) >= 5, 1, 0 )}
Das heißt, durch die "that"-Variable wird auf alle Teilfragen expandiert.
Dies kann man noch weiter feintunen, so dass damit sehr interessante und kurze Formeln zu erstellen sind.

Samsung


 

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

Please Log in to join the conversation.

More
7 months 3 weeks ago #268509 by nina22
Hallo Joffm,

es hat funktioniert! Vielen Dank für die Hilfe.

Please Log in to join the conversation.

Moderators: holchJoffmtpartner

Lime-years ahead

Online-surveys for every purse and purpose