0 votes
in SoSci Survey (dt.) by s309225 (110 points)

Liebe Community, lieber Support,

ich stehe vor folgender Herausforderung und wäre sehr dankbar für eure Hinweise:

Ausgangslage:

  • Es gibt 6 Rubriken von Stimuli + Fragen, die auf jeweils 10 Seiten angelegt sind. (also ein Gesamtpool von 60 Seiten)
  • Jede Seite ist mit einer anderen Seite (aus einer anderen Rubrik) gekoppelt, d. h., sobald eine Seite gezogen wird, wird die gekoppelte Seite per Filter ausgeschlossen.

Ziel/Wunsch:

  • Aus jeder Rubrik sollen zufällig 5 von 10 Seiten ausgewählt werden > also insgesamt 30 Seiten pro Befragte/r.
  • Diese 30 Seiten sollen zudem in rotierter Reihenfolge präsentiert werden.

Bislang habe ich es nur über das Anlegen mehrerer Fragebögen hinbekommen. Aber ich ahne, dass es eine deutlich smartere Lösung gibt.

Die Randomisierung und den Ausschluss per Filterfrage bekomme ich hin. Nur ist mir nicht klar, wie ich die Selektion (5 aus 10) bezogen auf jede Rubrik und zudem noch die Rotation aller präsentierten Seiten umsetze.

Vielen Dank im Voraus!

by s309225 (110 points)
Edit: Einen kleinen Schritt bin ich weiter. Ich habe für jede Rubrik eine eigene Randomisierung erstellt, sodass jetzt wie gewünscht 5 aus 10 ausgewählt werden. Auch die Ausschlussfilter funktionieren richtig.

Es fehlt also nur noch, dass die Seiten in rotierter Reihenfolge erscheinen.

1 Answer

0 votes
by SoSci Survey (339k points)

Jede Seite ist mit einer anderen Seite (aus einer anderen Rubrik) gekoppelt, d. h., sobald eine Seite gezogen wird, wird die gekoppelte Seite per Filter ausgeschlossen.

Ich würde das Ganze ein wenig anders betrachten: Sie haben nicht 60 unabhängige Seiten, sondern eigentlich 30 Paare aus jeweils 2 Seiten. Diese 30 Paare sind aber jeweils noch 2 Ruriken zugeordnet. Jetzt wäre es sinnvoll zu wissen, was die Rubrik für ein Faktor ist, und wie die Zuordnung der Paare erfolgt. Meine Vermutung wäre, dass vielleicht ein 6 x 5 x 2 Design dahinter steht oder ähnlich?

Auf Basis dieser Struktur kann man dann entscheiden, woraus man überhaupt zieht.

Es fehlt also nur noch, dass die Seiten in rotierter Reihenfolge erscheinen.

Wenn Sie mit Ihrer Ziehung bereits zufrieden sind und nur noch die Rotation benötigen, dann müssten Sie bitte kurz als Kommentar erklären, wie Ihre Filterung der Seiten aussieht - denn diese sollte ja bei der Rotation möglichst nicht kaputt gehen.

by s309225 (110 points)
Probieren hilft... :-)

Mit der folgenden Zeilen...

show($inhalt['A']);
show($inhalt['F1']);
show($inhalt['F2']);
show($inhalt['F3']);


...(ganz wie in ihrem Kommentar), werden die Seiten nun weitestgehend richtig angezeigt. Also oben ein zufälliger Stimulustext und darunter die drei dazugehörigen Fragen. Allerdings steht oberhalb des Textes jeweils noch die Nummer des jeweiligen Stimulus. Also zum Beispiel "Stimulus 27". Ich schätze das ist irgendwo in den bisherigen Zeilen enthalten (und entfernbar)?
by s309225 (110 points)
Haha, okay das war nun fast selbsterklärend. Die einzige html-Zeile...

Sorry, für das zuspammen. Aber es macht wirklich Spaß, das Programm zu erkunden...
by SoSci Survey (339k points)
Sag' ich doch ... Sie lernen hier noch richtig zu programmieren :)

So, eine Sache haben wir noch. Den Faktor. Da machen wir jetzt folgendes: Wir lesen für jeden Stimulus aus, was wir im zweiten (!) Zufallsgenerator (der A/B) gezogen haben. Der zweite Zufallsgenerator hat 30 Variablen, weil Sie ja pro Interview 30 Werte ziehen. Und mit der Funktion id() finden wir die passende Variable.

Wenn der zweite Zufallsgenerator RG02 heißt, sieht das so aus:

$varID = id('RG02', $stimulus);

Damit können wir nun das A/B abrufen

$faktor = value($varID, 'label');

Wenn Sie da bereits 'A' und 'B' genommen haben, ist es trivial:

show($inhalt[$faktor]);

Alternativ wäre es aber auch etwas transparenter lösbar:

if ($faktor == 'A') {
    show($inhalt['A']);
} else {
    show($inhalt['B']);
}
by s309225 (110 points)
Naja, ich komme gerade so mit und versuche eher das nachzuahmen, was Sie vorgeben. :-)  

Ich glaube, irgendetwas habe ich trotzdem ausgelassen oder übersehe ich noch. Der unterste Teil des Codes sieht nun so aus:

show($inhalt['A']);
show($inhalt['F1']);
show($inhalt['F2']);
show($inhalt['F3']);

$varID = id('RS16', $stimulus);
$faktor = value($varID, 'label');
show($inhalt[$faktor]);


Also wenn ich die letzten drei Zeilen oberhalb der ersten vier platziere, dann wird der Stimulus (sinnvollerweise) auch oberhalb angezeigt. Aber unabhängig davon werden aktuell immer zwei Stimulustexte angezeigt. Einmal die zufällige/alternierende Abfolge und dann zusätzlich immer auch noch die Stimuli von A. Also auf jeder Seite. Vielleicht habe ich auch den Zufallsgenerator falsch konfiguriert. Ich habe 30 Zettel angelegt, 15 x A und 15 x B.

Gibt es hier eigentlich eine "Kaffekasse", in die man etwas geben kann? Bzw. hat das für mich hier schon Kurs-Charakter, für den ich mich gerne irgendwie erkenntlich zeigen würde. Ich sehe diesen Support jedenfalls wirklich nicht als selbstverständlich an.
by SoSci Survey (339k points)
Diese Zeile muss noch raus:

show($inhalt['A']);

die wird ersetzt von dem

show($inhalt[$faktor]);

> Gibt es hier eigentlich eine "Kaffekasse", in die man etwas geben kann?

Danke, aber nein, gibt es nicht. Buchhalterisch zu komplex ;) Aber wenn es Sie beruhigt: Ich bin auch lehrend an der Uni tätig, ein wenig Seminar im Support liegt mir also nicht so fern. Und natürlich dürfen Sie gerne ein wenig Werbung für SoSci machen.

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

...