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,

Im Rahmen meiner Bachelorarbeit muss ich eine Urnenfunktion in meiner Befragung benutzen.

Ich würde gerne meine Probanden in 4 Experimentalgruppen einteilen.

Was ich erzielen will ist, dass eine Frage für den einen Probanden am Anfang des Fragebogens gestellt wird und für den anderen am Ende gestellt wird (es handelt sich um die selbe Frage), genauso sollten 2 verschiedene Bilder jedesmal abwechselnd gezeigt werden.

Das heißt also:
1. Frage am Anfang + Stimulus 1
2. Frage am Anfang + Stimulus 2
3. Frage am Ende + Stimulus 1
4. Frage am Ende + Stimulus 2

Wenn ich das bei der Anleitung richtig verstanden habe muss ich bevor ich eine Urnenfunktion erstelle eine normale Randomisierung anlegen? in meinem Fall dann mit dem Mehrfaktorielles Experimentaldesign, richtig?

Dazu habe ich einen Zufallsgenerator erstellt wie folgt (habe ich auf meiner ersten Seite platziert):

1 = 1, 1, Frage vorne und WV
2 = 1, 2, Frage vorne und MV
3 = 2, 1, Frage hinten und WV
4 = 2, 2, Frage hinten und MV

...und dazu die Internen Variablen:

IV01_01 Version Frage Anfang und WV (1= IR03, 2= "ross.png")
IV01_02 Version Frage Anfang und MV (1= IR03, 2= "hiuhi.png")
IV01_03 Version Frage Ende und WV (1= IR06, 2= "ross.png")
IV01_04 Version Frage Ende und MV (1= IR06, 2= "hiuhi.png")

habe dann anschließend auch diesen PHP-Code geschrieben (habe ich genau unter dem Zufallsgenerator platziert):

putList('Z101', value('IV01', 'csv'));

Bei der "Präsentation des Stimulus" habe ich mich an den PHP-Code vom "Stimulus und Frage auf unterschiedlichen Seiten" orientiert, und habe dann,
diesen Code:

// PHP-Code auf der Seite mit der Frage
$zahl = value('Z101');
 
if ($zahl == 1) {
  question('IR03');
} elseif ($zahl == 2) {
  question('IR03');
}

und diesen hier:

// PHP-Code auf der Seite mit der Frage
$zahl = value('Z101');
 
if ($zahl == 3) {
  question('IR06');
} elseif ($zahl == 4) {
  question('IR06');
}

auf die betreffenden Seiten platziert und habe das gleiche auch für die 2 Bilder gemacht.

Leider funktioniert dass nicht beim Pretest. Können Sie mir bitte sagen was ich falsch mache?

und wenn ich das dann hingekriegt habe muss ich dann für die Urnenfunktion eigentlich nur noch eine Urne anlegen und den PHP-Code mit urnDraw erstellen, oder?

Ich hoffe dass meine Frage mehr oder weniger verständlich gestellt ist.

Vielen Dank schon im Voraus!

in SoSci Survey (dt.) by s196612 (125 points)
edited by SoSci Survey

1 Answer

0 votes
 
Best answer

Wenn ich das bei der Anleitung richtig verstanden habe muss ich bevor ich eine Urnenfunktion erstelle eine normale Randomisierung anlegen? in meinem Fall dann mit dem Mehrfaktorielles Experimentaldesign, richtig?

Die Urnenfunktion brauchen Sie vermutlich gar nicht - der Zufallsgenerator ist eine Weiterentwicklung der Urnen-Funktion. Wenn Sie 4 Experimentalgruppen haben, dann brauchen Sie einfach nur einen Zufallsgenerator mit 4 Zetteln.

Was Sie dann mit der Ziehung machen ... es gibt unterschiedliche Wege, die zum Ziel führen. Sie können die einzelnen Aktionen in den Zetteln hinterlegen. Oder Sie können an den Stellen, wo der Fragebogen jeder Gruppe etwas anderes zeigen soll, einfach einen PHP-Code verwenden. In Ihrem Fall würde ich gleich zweiteres empfehlen, weil diese Umsetzung weniger komplex ist.

Die internen Variablen und das putList() fallen dann komplett raus.

und habe dann diesen Code

Soweit so gut. Wenn es nicht klappt, dann werfen Sie als erstes einen Blick in die Debug-Information. Posten Sie gerne, was dort steht.

by SoSci Survey (223k points)
selected by s196612
Danke für Ihre schnelle Antwort!

Mir wurde gesagt dass bei der Urnenfunktion das Geschlechterverhältnis in den Bedingungen gleich wird und so meine Resultate exakter werden, deshalb würde ich gerne lernen wie das geht.
> Mir wurde gesagt dass bei der Urnenfunktion das Geschlechterverhältnis in den Bedingungen gleich wird

Sie suchen das hier: https://www.soscisurvey.de/help/doku.php/de:create:randomization-per-block
Hallo:)

Ich habe jetzt versucht eine Block-randomisierung durchzuführen, jedoch mache ich irgendwas falsch ich weiß jetzt aber nicht ob ich die Zufallsgeneratoren falsch erstellt habe oder den PHP-Code falsch geschrieben habe.

Ich habe 3 Blöcke (female, male, other), dazu habe ich 3 Zufallsgeneratoren erstellt die alle gleich sind:

1 = female
2 = male
3 = other

und den PHP-Code sieht bei mir so aus:

if (value ('SD01') == 1){
    show ('Z105');
} elseif((value('SD01') == 2) or (value('SD01') == 3)){
    show ('Z106');
} else {
    show ('Z107');
}

den habe ich an jeder Stelle gesetzt wo ich die eine Frage und den Stimuli habe.

Wenn ich preteste bekomme ich diese Fehlermeldung:

There is an error in the PHP code:
Questionnaire Error: Command or string (text) unfinished

A command, e.g. question() is missing a semicolon or
a string (text in quotation marks) is unclosed or
the string itself contains an apostrophe, e.g. html('Let's do it!'); – if the latter is the case, please type in a backslash (\) first.
Perhaps the opening and closing braces for the statement blocks are mismatched.
PHP code

005   show('Z105');
006 } else {
007   
008   show('Z106')
009 }  else {
010   
011   show('Z107');
012 }

Können Sie mir bitte sagen wo der Fehler liegt?

Einen schönen Tag noch:)
Laut Fehlermeldung fehlt ein Semikolon am Ende dieser Zeile:

show('Z106')

Außerdem haben Sie in der Fehlermeldung zweimal

} else {

Das geht nicht. Aber es entspricht auch nicht dem Code, den Sie oben angegeben haben. Daher vermute ich, dass Sie beim Reinkopieren des Codes hier in den Support noch ein wenig angepasst haben?
Danke für Ihre schnelle Antwort!

Ich glaube ich habe mein Fehler gefunden!
Naja, in Ihrem Code oben steht einmal "else", in der Fehlermeldung unten steht zweimal "else". Demnach wäre meine Vermutung, dass die Fehlermeldung sich auf einen anderen PHP-Code bezieht als den, an dem Sie arbeiten.

Bitte prüfen Sie einmal in der Debug-Information, ob der Fragebogen vielleicht bereits auf der nächsten Seite ist oder ob Sie vielleicht gar in einem Fragebogen gelandet sind?
Danke für Ihre schnelle Antwort!

Ich glaube ich habe mein Fehler gefunden, es hat sich auf einen anderen PHP Code bezogen wie Sie gesagt habe:) !
...