Welcome to the LimeSurvey Community Forum

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

Drei Experimentalgruppen mit unerschiedlichen Willkommenstexten

  • Moritz_Grefflando
  • Moritz_Grefflando's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
4 years 1 week ago #196472 by Moritz_Grefflando
Hallo liebe Community,

ich habe eine Frage zu einer Umfrage die ich erstellt haben.
Wir haben folgendes Problem. Wir erstellen eine Umfrage.
Wir möchten eine Umfrage erstellen bei der es drei Gruppen gibt.Die
Umfrage steht auch schon. Alle Gruppen sollen die gleiche Umfrage
bekommen, jedoch soll der Wilkommenstext der Umfrage bei allen drei
Gruppen anders sein. Hast du eine Idee wie man das realisieren könnte? In
der Praxis soll es so aussehen, dass die Proband_Innen einen Link öffnen
und zu einem der drei Fragebögen (bei dem sich lediglich der
Willkommenstext unterscheidet) weitergeleitet werden.
Wäre echt super wenn mir jemand möglichst schnell helfen könnte.
Vielen Dank im Voraus.

Liebe Grüße und bleibt gesund.
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
4 years 1 week ago - 4 years 1 week ago #196475 by Joffm
Hallo,
Du kannst Deine Probanden verteilen indem Du in den Willkommenstext eine Gleichung setzt, und mit micro-tyloring den Text anzeigst.
Allerdings ist es mit mehr als zwei Gruppen ein wenig diffizil.
Ich denke einmal darüber nach.

Falls es aber eine geschlossene Umfrage ist, lässt Du einfach Deine Oma in einem Token_Attribut zufällig eine Gruppe bestimmen und benutzt dieses dann für das mocro-tayloring.
(Ich benutze immer die Oma, um zu sagen "Jemand, der nicht in die Studie involviert ist")

Joffm

Ganz leicht ist es natürlich, wenn Du den LimeSurvey-Begrüßungstext nicht anzeigst, sondern dies in einer eigenen Seite vom Typ "Textanzeige" bewerkstelligst.

P.s.
Ich habe nachgedacht:
Offene Studie, drei verschiedene Texte im Begrüßungstext:
{if(rand1,3)==3,"Das ist Text 3",if(rand1,2)==1,"Das ist Text 1","Das ist Text 2"))}
Das geht, aber Du weißt natürlich nicht, welcher Teilnehmer welchen Text gesehen hat.

Dies geht nur mit der o.a. geschlossenen Studie, oder aber offen mit:
1. Frage versteckte Gleichung "randnum":{if(is_empty(randnum),rand(1,3),randnum)}
2. Frage Textdisplay {if(randnum==1,"Das ist Text 1",if(randnum==2,"Das ist Text 2","Das ist Text 3"))}

Dann hast Du in "randnum" die Gruppenzugehörigkeit der Teilnehmer gespeichert.

Also jetzt: up to you.

Volunteers are not paid.
Not because they are worthless, but because they are priceless
Last edit: 4 years 1 week ago by Joffm.
The following user(s) said Thank You: Moritz_Grefflando
The topic has been locked.
  • Moritz_Grefflando
  • Moritz_Grefflando's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
4 years 1 week ago #196504 by Moritz_Grefflando
Vielen Dank für Ihre hilfreiche Antwort und schnelle Rückmeldung.
Ich bin absoluter Anfänger im erstellen von Umfragen. Daher würde ich mich für die einfache Variante entscheiden und den Wilkommenstext als eigene Seite vom Typ "Textanzeige" anzeigen lassen. Könnten Sie mir genau erklären, wie das funktioniert? Das heißt wie und wo füge ich die drei unterschiedlichen Texte ein und ordne diese dann den unterschiedlichen Gruppen zu?
Sie würden mir damit einen riesen Gefallen tun.
Vielen vielen Dank für Ihre Hilfe!

Mit freundlichen Grüßen

Moritz
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
4 years 1 week ago #196506 by Joffm
Das habe ich doch schon geschrieben:

1. Frage versteckte Gleichung "randnum":{if(is_empty(randnum),rand(1,3),randnum)}
2. Frage Textdisplay {if(randnum==1,"Das ist Text 1",if(randnum==2,"Das ist Text 2","Das ist Text 3"))}


Dazu solltest Du natürlich auch einmal das Handbuch zu Rate ziehen, und die Beispielstudien durcharbeiten.
manual.limesurvey.org/Expression_Manager
und
manual.limesurvey.org/Expression_Manager_sample_surveys


Jetzt leg einmal los und falls es nicht klapt, schick uns Deinen Versuch als lss export.

Joffm

Du könntest ja auch aufteilen nach
Proband_Innen, Proband_Außen und Proband_Mitte. ;)
Sorry, konnte ich mir nicht verkneifen; aber Kamelschreibweise und Unterstrich, was sonst noch?

Volunteers are not paid.
Not because they are worthless, but because they are priceless
The topic has been locked.
  • Moritz_Grefflando
  • Moritz_Grefflando's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
4 years 1 week ago #196513 by Moritz_Grefflando
Nochmal Danke für Ihre Antowort. Ich bin wie gesagt absoluter Anfänger und kann mit "Frage Textdisplay {if(randnum==1,"Das ist Text 1",if(randnum==2,"Das ist Text 2","Das ist Text 3"))}" nichts anfangen. Wo genau muss ich diese Formel denn eintragen? Ich hab einiges ausprobiert und leider funktioniert nichts.
Vielleicht können Sie mir ja helfen.
Vielen Dank

mgf
Moritz
The topic has been locked.
  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
4 years 1 week ago #196516 by holch
Lieber Moritz, du möchtest hier schon in die "Fortgeschrittenen"-Features von Limesurvey einsteigen, das erfordert also etwas einlesen. Da wirst du nicht drum rum kommen. Anfänger ist man ja nur am Anfang, wenn man sich etwas eingearbeitet hat, dann ist man auch kein Anfänger mehr. ;-)


Nichts desto trotz will ich hier ein paar Tips geben, weil man manchmal etwas vor dem Berg steht und nicht weiss, wo man anfangen soll.

Die Links von Joffm sind auf jeden Fall sehr gut und du solltest dir diese auf jeden Fall mal ansehen. So lange dauert es auch gar nicht, sich diese mal durchzulesen.

Das Prinzip ist folgendes. Du brauchst ein Zufallszahl, auf deren Basis du entscheidest, welcher der Texte angezeig wird.

Dazu erstellst du eine Frage vom Typ "Gleichung" (Equation) und generierst über den von Joffm geposteten Code eine Zufallszahl zwischen 1 und 3. Einfach mal ausprobieren und schauen was passiert. Wenn das funktioniert, dann kannst du diese Frage verstecken (deine Teilnehmer sollen diese ja nicht sehen). Einstellung dazu gibt es in den Frageeinstellungen.

Dann hast du zwei Möglichkeiten: Wenn der Text relativ kurz ist, dann kannst du die Texte innerhalb einer "Text-Display" (oder vielleicht heisst das Text-Anzeige oder ähnlich in der deutschen GUI) Frage anzeigen, so wie Joffm das beschrieben hat.
Code:
{if(randnum==1,"Das ist Text 1",if(randnum==2,"Das ist Text 2","Das ist Text 3"))}

Also in das Feld des Texts für dies Textanzeige-Frage schreibst du diesen Code. Was tut er? Er schaut sich die Zufallszahl die du in der Frage "randnum" (Frage vom Typ Gleichung, siehe oben) erzeugst an und zeigt je nach Zufallszahl einen anderen Text an.

Wenn der Text relativ lang ist, dann würde ich dir empfehlen drei Text-Anzeige-Fragen zu erstellen. Eine für jeden deiner Texte. Und diese Textbausteine werden dann per Relevanzgleichung in der jeweiligne Frage ein und ausgeblendet, etwa so für den ersten Text:
Code:
randnum==1

Diese Fragen wird dann nur angezeigt, wenn die Zufallszahl in deiner Gleichungsfrage "1" ist. Und entsprechend halt dann für deine Texte 2 und 3 anpassen.

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

The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
4 years 1 week ago - 4 years 1 week ago #196520 by Joffm

{if(randnum==1,"Das ist Text 1",if(randnum==2,"Das ist Text 2","Das ist Text 3"))}


Um dieses IF-statement noch einmal zu erläutern:
Im Handbuch steht bei "Implemented Functions:
if : Excel-style if(test,result_if_true[,result_if_false = ""]) if(test,result_if_true[,result_if_false = ""])

Das heißt also, dieses statement erwartet drei Parameter
  1. eine Bedingung
  2. die Aktion, die ausgeführt wird, wenn die Bedingung WAHR ist
  3. die Aktion, die ausgeführt wird, wenn die Bedingung FALSCH ist

Jetzt kann man dieses natürlich verschachteln, soll heißen, die Aktion, wenn die Bedingung z.B. FALSCH ist, enthält ein weiteres IF-Statement.
Genauso ist es hier:

{if(randnum==1,"Das ist Text 1",if(randnum==2,"Das ist Text 2","Das ist Text 3"))}
Hier ist zunächst das "äußere" IF:
Wenn die Zufallszahl==1 ist, wird der "Text 1" angezeigt, sonst wird das nächste IF bearbeitet

So, und jetzt das "innere" IF:
if(randnum==2,"Das ist Text 2","Das ist Text 3")
Wenn die Zufallszahl==2 ist, wird der "Text 2" angezeigt, sonst wird "Text 3" angezeigt

Dieses Construct ist m.E. das meistbenutzte in LS, da es ja meistens darum geht, auf irgendwelche Antworten auf verschiedene Art zu reagieren.

Joffm

P.S.
Dies kann man natürlich auch nur auf Teile des Gesamttextes anwenden.
Wahrscheinlich gibt es bei Dir auch Textteile, die für alle drei Gruppen gleich sind.

Ein fast identisches Vorgehen wurde hier vor knapp drei Wochen erörtert.
www.limesurvey.org/forum/german-forum/12...t-formulieren#195477

Volunteers are not paid.
Not because they are worthless, but because they are priceless
Last edit: 4 years 1 week ago by Joffm.
The topic has been locked.
  • Moritz_Grefflando
  • Moritz_Grefflando's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
4 years 1 week ago - 4 years 1 week ago #196561 by Moritz_Grefflando
Danke für die Erklärung, leider hat es immer noch nicht geklappt.
Ich habe alles genauso gemacht, wie sie es gesagt haben.
1. Ich habe eine Fragengruppe erstellt.
2. Ich habe eine Frage vom Typ Gleichung erstellt und in die Relevanz-Gleichung den Code: { if(randnum == 1, "Das ist Text 1", if(randnum == 2, "Das ist Text 2", "Das ist Text 3")) } eingefügt und die Frage versteckt.
3. Ich habe drei weitere Fragen vom Typ "Textanzeige" erstellt und in die Relevanz-Gleichung jeweils "randnum ==1, randnum ==22, randnum ==3" eingetragen.
Leider werden mir bei der Fragegruppenvorschau nur drei leere Kästen angezeigt. Auch wenn ich es wie Sie beschrieben haben in die Textfelder der Fragen vom Typ "Textanzeige" jeweils "randnum ==1, randnum ==22, randnum ==3" eintrage, werden mir nur 3 Kästen mit den o.g. Wörtern (z.B. randnum==1) angezeigt.
Auch wenn ich nur eine Frage vom Typ Textanzeige mache und die beiden Varianten ausprobiere, funktioniert es leider nicht.
Wenn ich mir die Logik angucke, wird mir bei jeder Frage auch immer angezeigt, dass mind. immer 1 Fehler in der Frage ist.
Auch wenn ich alles ("randnum ==1, randnum ==22, randnum ==3")in eine Textanzeige packe, sowohl in die Relevanz Gleichung als auch in das Textfeld. funktioniert es nicht.
Deshalb die Frage, sind Sie sich sicher, dass der Code "{ if(randnum == 1, "Das ist Text 1", if(randnum == 2, "Das ist Text 2", "Das ist Text 3")) }" richtig ist´?
Ist Ihnen sonst ein Fehler aufgefallen?
In den "Code" habe ich immer den Namen der Frage angegeben.
Vielen Dank für Ihre Hilfe
Die Links habe ich mir auch angeguckt, finde aber keine Lösung..

Mit freundlichen Grüßen

Moritz
Last edit: 4 years 1 week ago by Moritz_Grefflando.
The topic has been locked.
  • Moritz_Grefflando
  • Moritz_Grefflando's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
4 years 1 week ago #196564 by Moritz_Grefflando
Danke für Ihre ausführliche Erklärung. Ich verstehe es in der Theorie auch wirklich. Leider sieht das in der Praxis noch etwas anders aus. Das Problem habe ich in der Nachricht an holch schon geschildert. Sind sie sich sicher das Ihr generierter Code richtig ist oder haben Sie eine andere Idee?

Mit freundlichen Grüßen

Moritz
The topic has been locked.
  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
4 years 1 week ago - 4 years 1 week ago #196565 by Joffm
Na, Moritz

Deshalb die Frage, sind Sie sich sicher, dass der Code "{ if(randnum == 1, "Das ist Text 1", if(randnum == 2, "Das ist Text 2", "Das ist Text 3")) }" richtig ist´?

Aber feste.
Das ist doch genau das, was angezeigt werden soll. Daher kommt das in die Frage vom Typ "Textanzeige".

Und in der Gleichungs-Frage, die bei Dir hoffentlich den Fragencode "randnum" hat, wird einfach in den Fragentext die Funktion zur Erzeugung einer Zufallszahl eingetragen.
Dass dies die Funktion "rand(x,y)" ist, hast Du hoffentlich schon bei den "implementierten Funktionen" in Handbuch gelesen.

Also ist die einfachste Form, die dann im Fragetext steht {rand(1,3)}.
Die etwas bessere Version ist {if(is_empty(randnum),rand(1,3),randnum)}
Damit vermeidet man, dass sich die Zufallszahl ändert, wenn der Respondent durch Zurückgehen wieder diese Frage berührt. (Es ist eben wie bei EXCEL, die Zufallszahl ändert sich bei jedem Neuaufruf der Seite)
Damit wird also zufällig eine Zahl zwischen 1 und 3 erzeugt und in der Variablen "randnum" gespeichert.
Daher kannst Du diese dann später benutzen.


Ich weiß nicht, was hieran nicht zu verstehen war

1. Frage versteckte Gleichung "randnum":{if(is_empty(randnum),rand(1,3),randnum)}
2. Frage Textdisplay {if(randnum==1,"Das ist Text 1",if(randnum==2,"Das ist Text 2","Das ist Text 3"))}

dass Du etwas ganz anderes machst.

So, das war's.
Ich warte jetzt auf Deine Eigenleistung, eben als lss export.

Joffm

und in die Relevanz-Gleichung den Code

In dem, was wir hier machen, kommt gar nichts in die Relevanzgleichung.

Dies wird erst dann interessant, wenn Du Dich entschließt, drei verschiedene Textanzeigen zu erstellen, die dann jeweils abhängig von der Zufallszahl angezeigt wirf.

Volunteers are not paid.
Not because they are worthless, but because they are priceless
Last edit: 4 years 1 week ago by Joffm.
The topic has been locked.
  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
4 years 1 week ago #196566 by holch
Code:
Dies wird erst dann interessant, wenn Du Dich entschließt, drei verschiedene Textanzeigen zu erstellen, die dann jeweils abhängig von der Zufallszahl angezeigt wirf.

Da bin ich jetzt vielleicht ein bisschen für die Verwirrung verantwortlich, weil ich unbedingt noch einen zweiten Lösungsansatz bringen musste.

@Moritz: Du hast da einiges durcheinander gehauen.
Code:
{ if(randnum == 1, "Das ist Text 1", if(randnum == 2, "Das ist Text 2", "Das ist Text 3")) }

Das soll ja angezeigt werden, muss also in eine Frage vom Typ Textanzeige, wie Joffm das schon erklärt hat. Versuche dich doch erstmal an der Version von Joffm. Wenn das klappt, dann verstehst du ganz bestimmt auch meinen zweiten Lösungsvorschlag. Der macht im Prinzip fast das Gleiche, aber mit einer etwas anderen Struktur. Joffms ansatz ist die beste Wahl wenn es darum geht kurze Texte ohne grosse Formatierung anzuzeigen, mein Ansatz ist besser wenn du relativ viel Text oder Text mit Formatierungen und Bildern anzeigen willst.

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

The topic has been locked.
  • Moritz_Grefflando
  • Moritz_Grefflando's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
4 years 1 week ago #196569 by Moritz_Grefflando
Also erstmal Danke für Ihre Hilfe. Es hat nun auch funktioniert. Ich kann Ihnen auch nicht erklären was an Ihrer Erklärung "nicht zu verstehen war". Ich habe es am Anfang betont, ich bin absoluter Anfänger! Ein bisschen mehr Verständnis würde mich wirklich freuen. Nicht jedem Menschen fällt so etwas auf Anhieb ganz so leicht. Ich bin sicher jeder Mensch hat Stärken und Schwächen in bestimmten Dinge, und das ist auch gut so! Leider hatte ich auch keine Zeit mir die ganzen Links durchzulesen, ich dachte auch dass dieses Forum dazu da ist, schneller an Informationen zu kommen. Schließlich habe ich noch andere Dinge zu tun als LimeSurvey Umfragen zu erstellen..
Naja, ich danke Ihnen trotzdem vielmals für Ihre Bemühungen und Ihre Hilfe. Letztendlich hat es genauso funktioniert. Den Fragencode "randnum" hatte ich nicht eingetragen, danke dass Sie es mir nochmal erläurtert haben.
Falls Sie noch Lust und Zeit haben mir zu antworten hier noch eine Frage:

Kann ich am Ende bei der Auswertung sehen, wer welchen Text hatte? Wenn ja, wie?

Mit freundlichen Grüßen und nochmals vielen Dank!

Moritz
The topic has been locked.
Moderators: Joffm

Lime-years ahead

Online-surveys for every purse and purpose