0 votes
in SoSci Survey (dt.) by s332765 (140 points)
edited by SoSci Survey

Hi,
wie oben beschrieben möchte ich eine randomisierte Gruppeneinteilung nach Soziodemographie (Alter und Geschlecht) vornehmen. Sprich, Stimulus 1 und 2 werden random zugeteilt, allerdings sind Männer/Frauen sowie Alter ungefähr gleich verteilt.

Dafür habe ich die Block-Randomisierung vorgesehen, alllerdings finde ich nicht einen PHP-Code, in dem beide Variablen berücksichtigt werden.
Ich frage auf Seite zwei Geschlecht SD01 (w=1, m=2, d=3) und Alter SD0 (freier Eingabe) ab, auf S.4 ist dann mein Zufallsgenerator mit folgendem Code:

if ((value('SD01') == 1) && (value('SD0') < 42)){
// Zufallsgenerator ST06 einbinden (w, unter 42)
show('ST06');
}else {
// Zufallsgenerator ST07 einbinden (alle anderen)
show('ST07');
}

Ich dachte mir, dass meine Versuchspersonen zwischen 20 und 65 sind und habe daher die Grenze bei 41 Jahre gesetzt.
Wenn ich einen Pretest mache, steht bei den Debug Infos, dass die Einteilung vom Geschlecht abhängig gemacht wurde, allerdings kommt das Alter nirgends vor.
Ich freue mich sehr über Hilfe und bedanke mich im Voraus!!

Viele Grüße

Zusatz: ich habe ChatGbt gefragt, der Vorschlag war folgender:

// PHP-Code hier (ohne php-Tags)
$geschlecht = value('SD01');
$alter = value('SD0');

if ($alter < 42) {
$alter_block = 'u42';
} else {
$alter_block = 'o42';
}

$block = $geschlecht . '_' . $alter_block;

if (in_array($block, ['1_u42', '1_o42', '2_u42', '2_o42', '3_u42', '3_o42'])) {
if (random() < 0.5) {

show('ST06');
} else {

show('ST07');
}
} else {
show('ST07');
}

der Code funktioniert auch, allerdings weiß ich nicht, ob das zu viele Blöcke sind, da ich mit max. 40 Versuchspersonen rechne.

1 Answer

0 votes
by SoSci Survey (352k points)

allerdings weiß ich nicht, ob das zu viele Blöcke sind, da ich mit max. 40 Versuchspersonen rechne.

Wie viele Blöcke möchten Sie denn machen? Bei nur zwei möglichen Stimuli ist das Risiko jetzt nicht allzu groß, dass Sie durch zu kleine Teilgruppen irgendwelche Verzerrungen verursachen. Also, im Prinzip können Sie auch 20 Gruppen machen.

Was den Code von ChatGPT angeht: Das ist inhaltlich halt Blödsinn, weil der Chatbot wenig Ahnung von SoSci Survey hat und hier überhaupt nicht beachtet wurde, dass Sie eine Gleichverteilung innerhalb der Gruppen haben wollen. Was der Code macht, ist einfach eine uneingeschränkte Zufallsauswahl (aber aus zwei Zufallsgeneratoren) - die hätten Sie auch einfacher haben können.

Wenn Sie 3x2 Gruppen haben wollen, wäre Ihr Weg von oben schon nicht ganz schlecht. Sie könnten die beiden IF-Filter aber schachteln:

if (value('SD01') == 1) {
  if (value('SD0') < 42) {
    show('ST06');
    put('IV01_01', value('ST06'));
  } else {
    show('ST07');
    put('IV01_01', value('ST07'));
  }
} elseif (value('SD01') == 2) {
  if (value('SD0') < 42) {
    show('ST08');
    put('IV01_01', value('ST08'));
  } else {
    show('ST09');
    put('IV01_01', value('ST09'));
  }
} else {
  if (value('SD0') < 42) {
    show('ST10');
    put('IV01_01', value('ST10'));
  } else {
    show('ST11');
    put('IV01_01', value('ST11'));
  }
}

So bekommen Sie abhängig von der Gruppe (mit 6 Gruppen) in IV01_01 den passenden Wert. Damit können Sie dann den Stimulus anzeigen.

Falls Sie den Stimulus schon per HTML-Code im Zufallsgenerator untergebracht haben, ist das put() für die Auswertung dennoch hilfreich.

Allgemeiner Hinweis zur Nutzung von AI-Tools: ChatGPT hat die Anleitung von SoSci Survey nicht gelesen. Deshalb bekommen Sie von ChatGPT im Wesentlichen nur Hallizunationen zur Bedienung von SoSci Survey. Wenn Sie mit generativer KI arbeiten möchten: Gemini kennt die Anleitung zu SoSci Survey. Beachten Sie aber bitte, dass die Antworten von generativer AI selbst dann nur mit einer Chance von ca. 65% korrekt sind.

by s332765 (140 points)
Danke für die Geduld und gleich brauchen Sie noch mehr..
also, ich habe in einer Rubrik zwei Texte erstellt, bei dem jeweils der HTML-Code für das Video drin ist, die heißen ST_08 und ST_09.
Wenn ich eine interne Variable erstelle (nach Anleitung, neue Rubrik, dann Frage "Interne Variable") kann ich keinen Code eingeben. Ich dachte, das muss ich?
by SoSci Survey (352k points)
Die Interne Variable ist einfach nur eine neue Spalte im Datensatz. Davon benötigen Sie nur die Kennung.

Der PHP-Code kommt direkt in den Fragebogen - und zwar an die Stelle, wo der Stimulus erscheinen soll.
by s332765 (140 points)
ach so, das macht sinn.
In Ihrem Code steht ja ST_06.. bis ST_10. Mit was sind diese Variablen gefüllt? Sind das 3 mal die 2 Stimuli, die ich über den HTML code eingeben soll?
by s332765 (140 points)
Update:
Ich werde jetzt die Variable Alter weglassen und binde nur das Geschlecht mit diesem Code ein:
if (value('SD01') == 1) {
  // Zufallsgenerator ST10 einbinden (Frauen)
  show('ST10');
} else {
  // Zufallsgenerator ST11 einbinden (alle anderen)
  show('ST11');
}

Ich hoffe, das ist richtig.
Danke dennoch für die Hilfe. Ein schönes Wochenende : )
by SoSci Survey (352k points)
Das mit dem put() sollten sie dennoch machen, damit Sie in der Auswertung direkt sehen, in welcher Gruppe jemand war.

if (value('SD01') == 1) {
  // Zufallsgenerator ST10 einbinden (Frauen)
  show('ST10');
  put('IV01_01', value('ST10'));
} else {
  // Zufallsgenerator ST11 einbinden (alle anderen)
  show('ST11');
  put('IV01_01', value('ST11'));
}

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

...