0 votes
in SoSci Survey (dt.) by s222544 (640 points)

Hallo Support Team,

ich möchte ein Information Provision Experiment durchführen, bei dem die Experimentalgruppe zusätzliche Informationen erhält, die die Kontrollgruppe nicht erhält.

Derzeit habe ich 2 Zufallsgeneratoren, den ersten für die EG und die KG, den zweiten für die 12 verschiedenen Stimuli.

Ist der beste Weg, das Information Provision Experiment umzusetzen durch diesen PHP Code?

if (
  (value('EX01') == 1) and   // EG = 1 KG =2
  (value('EX02') == 1)  // stimuli_rand
) {
  text('EG1');  //  
}

D.h. wenn der Zufallsgenerator EG zieht sowie Stimulus 1, dann erscheint ein Textbaustein speziell für EG und 1, der die zusätzliche Information beinhaltet (im Vergleich zum Textbaustein der KG von 1, der die zusätzliche Information nicht beinhaltet).

Dies bedeutet dann, dass ich 12 Textbausteine für die EG habe und 12 Textbausteine für die KG?
Gibt es einen eleganteren Weg?

Vielen Dank im Voraus!

1 Answer

0 votes
by SoSci Survey (327k points)

Derzeit habe ich 2 Zufallsgeneratoren, den ersten für die EG und die KG, den zweiten für die 12 verschiedenen Stimuli.

Um sicherzustellen dass jeder Stimulus in jeder Gruppe gleich häufig gezogen wird, sollten Sie nur einen Zufallsgenerator mit 24 Zetteln verwenden. Dort würde also die Kombination aus Gruppe und Stimulus gespeichert.

Falls Sie nur in der EG Stimuli zeigen, müssten Sie es so einrichten, dass Sie nur in der EG überhaupt aus dem zweiten Zufallsgenerator ziehen. Sonst ist auch da die Gleichverteilung wieder nicht gewährleistet.

Wie man die AUsgabe dann am besten umsetzt, hängt davon ab, wie Sie Ihre Stimuli abgelegt haben. Im einfachsten Fall schreiben Sie direkt die 24 Kennungen in den Zufallsgenerator und zeigen dann einfach den zur Kennung gehörigen Text an:

$code = value('RG01', 'label');
text($code);
by s222544 (640 points)
Vielen Dank für den Kommentar!

Ich möchte in beiden Gruppen Stimuli zeigen mit dem Unterschied, dass die EG noch eine weitere Information beinhaltet, die in der KG fehlt. Dementsprechend brauche ich nur einen Zufallsgenerator, korrekt?

Zu "Wie man die AUsgabe dann am besten umsetzt, hängt davon ab, wie Sie Ihre Stimuli abgelegt haben. Im einfachsten Fall schreiben Sie direkt die 24 Kennungen in den Zufallsgenerator und zeigen dann einfach den zur Kennung gehörigen Text an":
D.h. Es wird nur das angezeigt, was im Zufallsgenerator eingespeist wurde. Kann ich zusätzliche Informationen hinterlegen, die bei jedem Stimulus und entweder KG oder EG anders sind? Dazu brauche ich verschiedene Textbausteine, oder?

Vielen Dank!
by SoSci Survey (327k points)
> Dementsprechend brauche ich nur einen Zufallsgenerator, korrekt?

Ja. Mit 24 Zetteln - und wenn Sie dort direkt die Kennungen der Texte mit den Stimuli verwenden, dann können Sie den Minimal-PHP-Code verwenden wie oben gepostet.

> Kann ich zusätzliche Informationen hinterlegen, die bei jedem Stimulus und entweder KG oder EG anders sind?

Natürlich - aber die müssten Sie dann mittels value(..., 'csv') auslesen und mittels putList() in interne Variablen speichern. Hier zur Inspiration: https://www.soscisurvey.de/help/doku.php/de:create:randomization-mehrfaktoriell
by s222544 (640 points)
Vielen Dank!
Genau, value und putList() werde ich verwenden. Nur nochmal als Verdeutlichung, ich brauche 24 Textbausteine, die ich in meinem PHP Code verwende, weil ich 12 verschiedene Stimuli habe und zwei Gruppen (entweder KG oder EG), richtig?

Vielen Dank!
by SoSci Survey (327k points)
Eventuell kann man auch weniger Textbausteine verwenden und eleganter mit Platzhalter arbeiten. Aber mit 24 Texten sollten Sie auf alle Fälle zum Ziel kommen.
by s222544 (640 points)
Vielen Dank!
by s222544 (640 points)
Mir ist gerade aufgefallen, dass, wenn ich 24 Einträge im Zufallsgenerator habe bei Mehrfachziehungen nicht mehr gewährleistet ist, dass EG weiterhin EG bleibt und dass KG weiterhin KG bleibt.

Für mein Experiment wäre es wichtig, dass wenn ein Proband einer Gruppe zugeteilt wird, er in dieser bleibt, denn sonst könnte man anhand der zusätzlichen Information (die in der KG fehlt) erkennen, in welcher Gruppe man ist.

Wie kann ich das Problem angehen, dass ein Proband bei Mehrfachziehungen immer in derselben Gruppe bleibt - entweder KG oder EG?

Vielen Dank im Voraus!
by SoSci Survey (327k points)
Ich hatte es bisher als 2x24-Experiment verstanden. Wie sehen Ihre Mehrfachziehungen denn aus?
by s222544 (640 points)
Ich hatte mir das als Loop vorgestellt, dass pro Interview mehr als 1 Stimul gezeigt werden, vielleicht so 7. Wichtig wäre, dass alle 7 entweder KG oder EG sind, damit das Verhalten der Probanden durch den Wechsel nicht beinflusst wird (weil sie dann verstehen würden, in welcher Gruppe sie sind).

Vielen Dank!
by SoSci Survey (327k points)
Okay, dann müssen Sie anders vorgehen. Dann brauchen Sie eine Zufallsgenerator für die Gruppe und zwei (!) Zufallsgeneratoren, aus denen dann jeweils 7 gezogen werden.

Wichtig ist, dass Sie abhängig von der Gruppen-Ziehung nur aus einem der beiden Zufallsgeneratoren ziehen.

Wenn Sie diese Ziehung dann in interne Variablen kopieren (s. https://www.soscisurvey.de/help/doku.php/de:create:randomization-per-block) - und zwar gleich das Label via value(..., 'label'), dann können Sie das direkt für die Anzeige verwenden.
by s222544 (640 points)
edited by s222544
Vielen Dank für Ihre Antwort.

Ich brauche also zwei Zufallsgeneratoren: (1) für KG und EG und (2) für die 12 Stimuli aus denen 7 gezogen werden? Wie verbinde ich beide miteinander?

Zu "Wichtig ist, dass Sie abhängig von der Gruppen-Ziehung nur aus einem der beiden Zufallsgeneratoren ziehen." : Können Sie mir bitte erklären, wie ich das hinbekomme? Ich denke, ich brauche beide, weil einer bestimmt welche Gruppe, der andere bestimmt welche Stimuli.

Zu "label": Was macht die Funktion "label"? In der Anleitung kommt label leider nicht vor.

Vielen Dank!
by SoSci Survey (327k points)
> Wie verbinde ich beide miteinander?

Dazu hatte ich die Anleitung zur Block-Randomisierung verlinkt :)

> Was macht die Funktion "label"?

Die Funktion ist value(), es geht um den zweiten Parameter, der "label" lauten kann: https://www.soscisurvey.de/help/doku.php/de:create:functions:value
by s222544 (640 points)
Vielen Dank für Ihre Antwort.

Ich habe jetzt also:
EX03 - der Zufallsgenerator, der über KG oder EG entscheidet
EX04 - der Zufallsgenerator nur mit den EG stimuli
EX05 - der Zufallsgenerator nur mit den KG stimuli
EX06 - interne Variablen mit 1 Item mit Kennung EG/KG Stimuli

Folgenden PHP-Code verwende ich:

if (value('EX03') == 1) { // EG == 1 KG ==2
  // Zufallsgenerator EG stimuli ( EX04) einbinden
  show('EX04');
  put('EX06', value('EX04'));
} else {
  // Zufallsgenerator KG stimuli einbinden
  show('EX05');
  put('EX06', value('EX05'));
}

Dann möchte ich folgenden Code verwenden (siehe unten), bin mir aber unsicher was in EX06 gespeichert wird. Wird gespeichert, ob EG oder KG gezogen wurde oder die Nummer des Stimuls?
Wenn nur die Nummer die Stimuls gespeichert wird, weiß ich nicht, ob KG oder EG gewählt wurde..

if (value('RG04_01') == 2) {
  // Textstimulus A anzeigen
  text('ST01');
} elseif (value('RG04_01') == 3) {
  // Textstimulus B anzeigen
  text('ST02');
}

Brauche ich noch eine interne Variable, die abspeichert, ob KG oder EG ausgewählt wurde?

Vielen Dank!
by SoSci Survey (327k points)
> EX06 - interne Variablen mit 1 Item mit Kennung EG/KG Stimuli

Wenn Sie aus EX04 bzw. EX05 jeweils 7 Stimuli ziehen möchten, dann brauche Sie in EX06 auch 7 Items/Variablen.

> if (value('RG04_01') == 2)

Machen Sie es sich einfacher. Speichern Sie in der internen Variable direkt die vom EX04/05 gezogene Textkennung und dann zur Anzeige nur noch:

question(value('EX06_01'));
by s222544 (640 points)
Vielen Dank für Ihre Unterstützung!

Habe jetzt mehrere Stimuli in den internen Variablen abgelegt, sowie put um label ergänzt: put('EX06', value('EX04',label)); und put('EX06', value('EX05',label));

Ich habe Textbausteine, für alle EG und KG, die im PHP Code noch nicht eingebunden sind. Deshalb funktioniert question(value('EX06_01')); wahrscheinlich nicht.

Im debug Modus erscheint folgender Fehler:
Im PHP-Code trat ein Fehler auf.

Fehler im Fragebogen: Uncaught Error: Undefined constant "s2survey\questionnaire\environment\label" in /var/www/s2survey/html/lib/s2survey/phpcode/PHPCodeExecutor.php(547) : eval()'d code:10 Stack trace: #0 /var/www/s2survey/html/lib/s2survey/phpcode/PHPCodeExecutor.php(547): eval() #1 /var/www/s2survey/html/lib/s2survey/questionnaire/php/PHPCodeExecutorQnr.php(63): s2survey\phpcode\PHPCodeExecutor->runCode() #2 /var/www/s2survey/html/inc/QuestionnairePHP.php(574): s2survey\questionnaire\php\PHPCodeExecutorQnr->runCode() #3 /var/www/s2survey/html/lib/s2survey/questionnaire/QuestionnaireElement.php(479): QuestionnairePHP->runElement() #4 /var/www/s2survey/html/lib/s2survey/questionnaire/QnrPage.php(1515): s2survey\questionnaire\QuestionnaireElement->run() #5 /var/www/s2survey/html/lib/s2survey/questionnaire/QnrPage.php(1434): s2survey\questionnaire\QnrPage->runContent() #6 /var/www/s2survey/html/inc/InterviewCase.php(1466): s2survey\questionnaire\QnrPage->run() #7 /var/www/s2survey/html/inc/Interviewer.php(654): InterviewCase->createQuestionnairePage() #8 /var/www/s2survey/html/inc/Interviewer.php(823): Interviewer->handleCreate() #9 /var/www/s2survey/html/inc/Interviewer.php(1963): Interviewer->handleInterview() #10 /var/www/s2survey/html/info_provision/index.php(4): Interviewer::run() #11 {main} thrown
Zeile: 10

PHP-Code

007 } else {
008    
009   show('EX05');
010   put('EX06', value('EX05',label));
011 }
012
013 question(value('EX06_01'));

was mache ich jetzt? Wie kann ich die Textbausteine einbauen?

Vielen Dank!
by SoSci Survey (327k points)
Da fehlen die Anführungszeichen um das 'label'.

Aber Sie wollten doch mehrere Zettel pro ziehung ziehen, oder? Dann wäre der richtige Code eher:

...
show('EX05');
putList('EX06', array_values(valueList('EX05', NULL, 'label')));
...

Ob es das array_values() unbedingt braucht, kann ich auswendig nicht sicher sagen. Aber es schadet nicht.
by s222544 (640 points)
Beim Umsetzen des Codes erscheint die Fehlermeldung "Die Variable EX06 gibt es in diesem Projekt nicht (siehe Variablen-Übersicht). Daher kann kein Antwort-Wert dafür ermittelt werden."

Ich denke, das liegt daran, dass in der Übersicht nur EX06_01, 02, 03 etc. existieren, nicht aber EX06.

Ich bitte Sie höflich um Antwort, wie ich herausfinden kann, ob KG oder EG gewählt wurde; davon hängt ab welcher Textbaustein verwendet wird.

Vielen Dank!
by SoSci Survey (327k points)
Sind Sie sicher, dass sich die Fehlermeldung auf den Code bezieht, den ich gepostet habe - und dass dort putList() und valueList() steht. Oder haben Sie EX06 noch an anderer Stelle verwendet?

> Ich bitte Sie höflich um Antwort, wie ich herausfinden kann, ob KG oder EG gewählt wurde

Da waren Sie mit de Filter schon nah dran. Nur lautet die Variable - laut Ihrer Beschreibung - EX03.

if (value('EX03 ') == 1) {
  text('ST01');
} elseif (value('EX03 ') == 2) {
  text('ST02');
}
by s222544 (640 points)
Vielen Dank für Ihre Hilfe!

Der Fehler tritt nicht mehr auf, dafür ein neuer: Die Variable EX04 wurde im Laufe dieses Interviews auf keiner vorhergehenden Seite abgefragt. Daher kann die Funktion value() keinen Antwort-Wert ermitteln.

Auf der ersten Seite habe ich einen Intro Text sowie den ersten Zufallsgenerator EX03 (entscheidet über T und C).
Auf der zweiten Seite ganz oben: putList('EX07', value('EX03', 'csv'));
im nächsten Feld: if (value('EX03') == 1) { // EG == 1 KG ==2
  // Zufallsgenerator EG stimuli ( EX04) einbinden
  show('EX04');
  putList('EX06_01', array_values(valueList('EX04', NULL, 'label')));  
} else {
  // Zufallsgenerator KG stimuli einbinden
  show('EX05');
  putList('EX06_01', array_values(valueList('EX05', NULL, 'label')));
}

im nächsten Feld: if (value('EX04') == 1) {
  // Textstimulus A anzeigen
  text('1_T');
} elseif (value('EX04') == 2) {
  // Textstimulus B anzeigen
  text('2_T');
} elseif (value('EX04') == 3) {
  // Textstimulus B anzeigen
  text('3_T');
} elseif (value('EX04') == 4) {
  // Textstimulus B anzeigen
  text('4_T');
} elseif (value('EX04') == 5) {
  // Textstimulus B anzeigen
  text('5_T');
} elseif (value('EX04') == 6) {
  // Textstimulus B anzeigen
  text('3_T');
} elseif (value('EX04') == 7) {
  // Textstimulus B anzeigen
  text('7_T');
}

im nächsten Feld:
if (value('EX05') == 1) {
  // Textstimulus A anzeigen
  text('1_C');
} elseif (value('EX05') == 2) {
  // Textstimulus B anzeigen
  text('2_C');
} elseif (value('EX05') == 3) {
  // Textstimulus B anzeigen
  text('3_C');
} elseif (value('EX05') == 4) {
  // Textstimulus B anzeigen
  text('4_C');
} elseif (value('EX05') == 5) {
  // Textstimulus B anzeigen
  text('5_C');
} elseif (value('EX05') == 6) {
  // Textstimulus B anzeigen
  text('3_C');
} elseif (value('EX05') == 7) {
  // Textstimulus B anzeigen
  text('7_C');
}

darunter: question('SL02', 'combine=SL01');  // Kombiniert Text mit Schiebereglern - eine kombinierte Frage

Warum tritt der EX04 Fehler auf?

Manchmal kommt auch dieser Fehler vor: Die Variable EX05 wurde im Laufe dieses Interviews auf keiner vorhergehenden Seite abgefragt. Daher kann die Funktion value() keinen Antwort-Wert ermitteln.

Wie kann ich diese Fehler beheben?

Vielen Dank!
by SoSci Survey (327k points)
> Warum tritt der EX04 Fehler auf?

Weil Sie die Zufallsziehung aus EX04 uch dann abfragen, wenn EX04 gar keine Zufalllszahl gezogen hat. Daher meine Empfehlung (s.o.), dass Sie das Ergebnis der Ziehung in eine interne Variable kopieren und anschließend mit der internen Variable arbeiten.

Aber bevor SIe jetzt zu viel Aufwand in die Filter stecken: Möchsten Sie aus EX04/05 nur einen Zettel ziehen oder 7? Wenn es 7 werden sollen, müssten Sie sich jetz darum kümmern - sonst müssen Sie am Ende den Code wieder komplett umschreiben.
by s222544 (640 points)
Vielen Dank!

Das habe ich inzwischen auch bemerkt und arbeite an den internen Variablen.

Dies möchte ich so umsetzen:

if (
  (value('EX06_01') == 1) and
  (value('EX07_01') == 1)
) {
  text('1_T');  //
}

EX06_01 speichert die Nummer des Stimuls
EX07_01 speichert, ob EG oder KG

Passt das so? Und das gleiche natürlich auch für KG.

Vielen Dank!
by SoSci Survey (327k points)
> EX07_01 speichert, ob EG oder KG

Warum, das haben Sie doch in EX03 schon .... dafür brauchen Sie keine internen Variablen. Die internen Variablen sind dafür da, dass Sie nicht jedesmal 4 Filter brauchen, sondern nur noch einen.

EX07_01 würde dann entweder den in EX05_01 oder den in EX06_01 gespeicherten Zettel enthalten. Und wie ich schon empfohlen habe, empfehle ich auch jetzt nochmal: Sorgen sie dafür, dass in der internen Variable direkt die Kennung des Textes gespeichert wird, den Sie anzeigen möchten. Dann brauchen Sie die ganzen langen Filter nicht.

Meine Empfehlung:

1. Nehmen Sie erstmal nur einen Ihrer 7-aus-12-Zufallsgeneratoren (lassen Sie EG/KG erstmal weg).
2. Sorgen Sie mittels putList() und valueList() dafür, dass in den internen Variablen die Labels stehen, die der vorgenannte Zufallsgenerator gezogen hat.
3. Dann nehmen Sie den EG/KG Zufallsgenerator dazu, und machen die obigen Schritte 1 und 2 entweder für den einen oder für den anderen Zufallsgenerator.

Wenn das klappt, dann ist der Rest trivial:

text(value('EX07_01'));

Keine IF-Filter, keine langen fehleranfälligen Codes.
by s222544 (640 points)
Vielen Dank für die Anleitung, die ich versuche zu befolgen.

PutList() und valuelist() habe ich im Code bereits umgesetzt, wie Sie mir früher schon geraten haben:
putList('EX07', value('EX03', 'csv'));
 if (value('EX03') == 1) { // EG == 1 KG ==2
  // Zufallsgenerator EG stimuli ( EX04) einbinden
  show('EX04');
  putList('EX06_01', array_values(valueList('EX04', NULL, 'label')));  
} else {
  // Zufallsgenerator KG stimuli einbinden
  show('EX05');
  putList('EX06_01', array_values(valueList('EX05', NULL, 'label')));


Derzeit arbeite ich an Schritt 2: "dass in den internen Variablen die Labels stehen, die der vorgenannte Zufallsgenerator gezogen hat."

Die Labels der Textbausteine hängt von EG und KG ab. Wenn ich mich nur auf den Stimuli Zufallsgenerator fokussiere und in EX06 die Textbaustein-Kennungen eingeben soll, soll ich die Kennungen von EG oder KG eingeben?

Als Beispiel, Textbaustein 1_T soll angezeigt werden, wenn Stimul 1 und EG gezogen wird. Textbaustein 1_C soll angezeigt werden, wenn Stimul 1 und KG gezogen wird. Beide Textbausteine sind verschieden.

Nach dem Textbaustein sollen 3 Schieberegler und ein Textfeld erscheinen.

Vielen Dank für Ihre Hilfe; ich fange gerade erst mit Experimenten in SoSci an.
by SoSci Survey (327k points)
> putList('EX07', value('EX03', 'csv'));

Diese Zeile können Sie m.E. weglassen.

Der Rest sieht gut aus. Allerdings müsste bei putList() auch nur die Kennung der Frage, nicht der Variable stehen:

putList('EX06', array_values(valueList('EX04', NULL, 'label')));  

Sie sollten - wenn Sie mal unter "Erhobene Daten" -> "Daten ansehen" nachsehen, die Kennungen der Textbausteine in EX06... stehen haben. Als Text. Passt das soweit?
by s222544 (640 points)
Vielen Dank für Ihre Antwort!

Bei "erhobenen Daten" - Daten ansehen unter EX06_01 steht nur die Zahl, die aus dem Zufallsgenerator gezogen wurde, z.B. 12 oder 1. Ein reines EX06 gibt es nicht.

Tut mir leid, wenn meine bisherigen Formulierungen unklar waren. Ich versuchs nochmal:
Meine Textbausteine sind alle so formuliert 1_T (Stimul 1 und EG) oder 2_C (Stimul 2 und KG) oder 12_T (Stimul 12 und EG), d.h. jeder Textbaustein ist auf eine bestimmte Situation ausgelegt.

Wenn ich Ihre Anleitung (Schritte 1 und 2) richtig verstehe, so soll ich die Textbausteine trennen, sodass die internen Variablen einmal die Nummer des Stimuls speichern und einmal, ob KG oder EG.

Wenn ich nicht weiß, welchen Stimul oder welche Gruppe der Zufallsgenerator zieht, wie kann ich dann Textkennungen als labels in den internen Variablen hinterlegen?

Ich bedanke mich sehr für Ihre Hilfe!
by SoSci Survey (327k points)
> Bei "erhobenen Daten" - Daten ansehen unter EX06_01 steht nur die Zahl, die aus dem Zufallsgenerator gezogen wurde

Das ist nicht gut. Im Zufallsgenerator selbst stehen aber schon die Labels der Textbausteine, ja?

Wenn Sie folgende Zeilen unter dem Zufallsgenerator einfügen, was wird denn angezeigt?

debug(valueList('EX04'));
debug(valueList('EX04', NULL, 'label'));
by s222544 (640 points)
Im ersten Zufallsgenerator (EX03) ist folgendes eingetragen: 1 = T
2 = C

Im zweiten Zufallsgenerator (EX04) sind die Stimuli der EG als Zahlen eingegeben - 1-36 - habe die Anzahl der Stimuli erhöht.

Im dritten Zufallsgenerator (EX05) sind die Stimuli der KG als Zahlen eingetragen: ebenfalls 1-36.

Zusätzlich gibt es die Textbausteine, 36 für EG und 36 für KG, jeweils gekennzeichnet, 1_C oder 1_T.

Hatte der Anleitung für Blockrandomisierung gefolgt bei der Kodierung der Zufallsgeneratoren.

Soll ich die Zahlen in den KG und EG Zufallsgeneratoren durch die Kennungen der jeweiligen Textbausteine ersetzen?

Würde dann 'label' bei putList('EX06', array_values(valueList('EX04', NULL, 'label')));  besser funktionieren?

Folglich was trage ich dann bei EX06 ein, was sind dann die Items der internen Variable, alle 72 möglichen Kombination von EG und KG und 1-36 Stimuli?

Vielen Dank!
by SoSci Survey (327k points)
Tragen Sie bitte bei den Zufallsgeneratoren 2 und 3 die Kennungen der Textbausteine ein, also

1 = 1_T
2 = 2_T
3 = 3_T

Danach starten Sie bitte nochmal ein Interview und prüfen, ob die Kennungen korrekt in die internen Variablen gespeichert werden?
by s222544 (640 points)
Vielen Dank für die Antwort.
Habe die Zufallsgeneratoren umbenannt und benutze folgenden PHP-Code:
if (value('EX07_01') == 1) { // EG == 1 KG ==2
  // Zufallsgenerator EG stimuli ( EX04) einbinden
  show('EX04');
  putList('EX06', array_values(valueList('EX04', NULL, 'label')));  
} else {
  // Zufallsgenerator KG stimuli einbinden
  show('EX05');
  putList('EX06', array_values(valueList('EX05', NULL, 'label')));
}

darunter wie gewünscht:
debug(valueList('EX04'));
debug(valueList('EX04', NULL, 'label'));

Im debug Fragebogen erschien:
Die Variable EX07_01 wurde im Laufe dieses Interviews auf keiner vorhergehenden Seite abgefragt. Daher kann die Funktion value() keinen Antwort-Wert ermitteln. [Obwohl EX07_01 im PHP Code vorkommt]

Darunter:
Debug-Information für valueList('EX04'):
EX04

Debug-Information für valueList('EX04', NULL, 'label'):
EX04

EX06 existiert genauso wie EX06_01(genannt Stimuli) in der Variablen-Übersicht

EX07_01 (genannt EG-KG) ist grau hinterlegt in der Übersicht.

Derzeit habe ich einen Zettel pro Ziehung und dementsprechend eine interne Variable in EX06 und EX07.

Als Nächstes versuchte ich "text(value('EX07_01'));" einzubinden, worauf die Meldung erschien: Für die Funktion text() wurde keine Kennung angegeben.

Was mache ich falsch? Ich vermute die internen Variablen sind bei mir falsch kodiert? Soll ich da alle 36 Kennungen für EG und alle 36 Kennungen für KG eintragen?

Vielen Dank!
by SoSci Survey (327k points)
> Die Variable EX07_01 wurde im Laufe dieses Interviews auf keiner vorhergehenden Seite abgefragt.

Die brauchen wir ja auch nicht, da verwenden Sie bitte wieder das Original EX03.

if (value('EX03') == 1) { // EG == 1 KG ==2

>Debug-Information für valueList('EX04', NULL, 'label'):
>EX04

Nachdem der IF-Filter wegen dem EX07_01 nie in den oberen Zweig geht, wird EX04 auch nicht gezogen. Bitte korrigieren sie das IF und berichten Sie dann aus einem Fall wo EX03=1 gezogen wurde.
by s222544 (640 points)
Vielen Dank!

Habe folgenden Code verwendet und es scheint zu funktionieren:

if (value('EX03') == 1) { // EG == 1 KG ==2
  // Zufallsgenerator EG stimuli ( EX04) einbinden
  show('EX04');
  putList('EX06', array_values(valueList('EX04', NULL, 'label')));  
} else {
  // Zufallsgenerator KG stimuli einbinden
  show('EX05');
  putList('EX06', array_values(valueList('EX05', NULL, 'label')));
}
text(value('EX06_01'));

Wenn ich jetzt 7 Wiederholungen der Ziehungen haben möchte, muss ich dann EX06 bis _7 ergänzen, die internen Variablen um 6 "Stimuli" Kennungen ergänzen und es sollte funktionieren?

Vielen Dank!
by SoSci Survey (327k points)
Bei den anderen 6 Wiederholungen brauchen Sie nur noch die Zeile mit dem text() - der Code darüber muss nur einmal im Fragebogen stehen.

text(value('EX06_02'));
text(value('EX06_03'));
text(value('EX06_04'));
by s222544 (640 points)
Vielen Dank! Alles funktioniert!

Willkommen im Online-Support von SoSci Survey.

Hier bekommen Sie schnelle und fundierte Antworten von anderen Projektleitern und direkt von SoSci Survey.

→ Eine Frage stellen


Welcome to the SoSci Survey online support.

Simply ask a question to quickly get answers from other professionals, and directly from SoSci Survey.

→ Ask a Question

...