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

0 votes

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!

in SoSci Survey (dt.) by s222544 (355 points)

1 Answer

0 votes

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 SoSci Survey (252k 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!
> 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.
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!
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'));
Vielen Dank! Alles funktioniert!
...