0 votes
in SoSci Survey (dt.) by s095605 (350 points)
edited by s139847

Hallo zusammen,

ich habe ein Anliegen bezüglich dem Randomisieren von Bilder. Ich habe ein Set von 180 Bildern (bereits hochgeladen). Hierbei handelt es sich um 60 Personen. Von jeder Person gibt es drei Bilder (glücklich, traurig, neutral). Die Bilder sind mit einer Zahl gekennzeichnet und mit einer Endung für glücklich = _h, für traurig = _s und für neutral = _n.

Problem 1:
Nun möchte ich dass auf einer Fragebogenseite 20 verschiedene Personen gezeigt werden (mit Zufallsgenerator und loopPage() umsetzbar), allerdings sollen 10 glückliche und 10 traurige Gesichter gezeigt werden. Wie kann ich das gewährleisten?

Problem 2:
Auf der nächsten Seite sollen nun nur neutrale Gesichter gezeigt werden. 10 Personen sollen alt sein, also auf Seite 1 schonmal erschienen sein. und 10 Personen sollen neu sein, vom Proband noch nie gesehen. Wie kann ich das umsetzen?

Ich bin sehr dankbar für Hilfe, weil ich noch nicht zu einer Lösung gekommen bin...

Liebe Grüße

by SoSci Survey (328k points)
Bevor ich antworte eine wichtige Rückfrage: Dürften auf Seite 1 (teilweise) dieselben Personen glücklich und traurig gezeigt werden. Oder müssen es unterschiedliche Personen sein?

Wie wichtig ist es, dass alle Personen am Ende gleich häufig im Sample vorkommen? Oder können wir da eine uneingeschränkte Randomisierung verwenden, bei der eine Person vielleicht häufiger gezogen wird als eine andere?

Und wie wichtig ist es, dass die unterschiedlichen Varianten einer Person (traurig/fröhlich) gleich häufig gezeigt werden?
by s095605 (350 points)
Nein, auf Seite 1 müssen 20 unterschiedliche Personen gezeigt werden.

Ich sage es mal so: Es wäre optimal, wenn alle gleichhäufig gezogen werden.

Auch das ist wichtig. Es sollen genauso viel glückliche, wie traurige Personen gezeigt werden. (Also 10 glückliche und 10 traurige aus einem Pool von 60 Personen. Insgesamt also 20 von 60 Personen)

Auf Seite 2 kommen dann wieder 10 neue dazu (also am Ende von Seite 2 wurden 30 verschiedene Personen gezogen).
Und von den 10 Personen auf Seite 2, die bereits auf Seite 1 gezeigt wurden, sollten wieder 5 zuvor glücklich gezeigt worden sein und 5 zuvor traurig gezeigt worden sein. (Auf Seite 2 sind alle mit neutralem Gesichtsausdruck)

Ich hoffe das ergibt alles irgendwie Sinn...

1 Answer

0 votes
by SoSci Survey (328k points)

Ich sage es mal so: Es wäre optimal, wenn alle gleichhäufig gezogen werden.

Dann gehen Sie bitte wie folgt vor: Legen Sie einen Zufallsgenerator mit 60 Zetteln (entspr. den 60 Personen) an. Ich empfehle, dass Sie den ersten Teil des Dateinamens als Zettel verwenden. Daraus ziehen Sie dann 30 Zettel pro Interview (Einstellung im Zufallsgenerator). 20 davon sind für die erste Seite, 10 davon für die zweite Seite.

Nun möchte ich dass auf einer Fragebogenseite 20 verschiedene Personen gezeigt werden

Die 20 Personen haben wir also schonmal. Jetzt zur Stimmung. Erstellen Sie ein Array (s. Anleitung) mit zehnmal 1 und zehnmal 2. Dieses Array mischen Sie dann mittels shuffle(). Das ganze speichern Sie natürlich mit put() in einer internen Variable.

Nun haben wir eine Liste, ob die einzelnen Personen jeweils in glücklicher (1) oder trauriger (2) Variante gezeigt werden sollen. Das lässt sich mit loopPage() relativ bequem abspulen.

Auf der nächsten Seite sollen nun nur neutrale Gesichter gezeigt werden. 10 Personen sollen alt sein, also auf Seite 1 schonmal erschienen sein. und 10 Personen sollen neu sein

Die 10 neuen Personen haben wir oben ja schon gezogen. Im Prinzip können Sie also hier die Personen 11 bis 30 zeigen.

Ich vermute, Sie möchten verhindern, dass sich immer die zweite Hälfte der Personen wiederholt. Das ist relativ einfach. Sorgen Sie einfach mit shuffle() und registerVariable() noch dafür, dass die Reihenfolge der ersten 20 Personen und die Reihenfolge der zweiten 20 Personen gemischt wird.

Tipp: Lassen Sie das erstmal weg und bringen Sie es erstmal "sortiert" zum Laufen. Das ist für den Start anspruchsvoll genug. Wir helfen hier im Online-Support bei den Details, wenn es hakt.

Noch ein wenig zum Nachlesen und Einsteigen:
https://support.soscisurvey.de/?qa=13709/
https://support.soscisurvey.de/?qa=3516/

by s095605 (350 points)
Die 20 Personen haben wir also schonmal. Jetzt zur Stimmung. Erstellen Sie ein Array (s. Anleitung) mit zehnmal 1 und zehnmal 2. Dieses Array mischen Sie dann mittels shuffle(). Das ganze speichern Sie natürlich mit put() in einer internen Variable.

Nun haben wir eine Liste, ob die einzelnen Personen jeweils in glücklicher (1) oder trauriger (2) Variante gezeigt werden sollen. Das lässt sich mit loopPage() relativ bequem abspulen.

Ich glaube das verstehe ich noch nicht ganz. Den Zufallsgenerator habe ich angelegt mit 60 Zetteln, pro Experiment werden 30 gezogen. Jeder Zettel heißt z.B. 004.jpg (in Wirklichkeit habe ich die Bilder oo4_h, 004_n und 004_s hochgeladen).
Wie kann ich nun genau bestimmen, dass 10 mal _h gezogen wird und 10 mal_s (auf Seite 1)? Mache ich das über die Arrays 1 und 2? und was genau schreibe ich dann in die Arrays? Wäre das dann z.B. $happy = array(value(ZG01_h) etc.)?

Vielen Dank nochmal
by SoSci Survey (328k points)
>  Jeder Zettel heißt z.B. 004.jpg (in Wirklichkeit habe ich die Bilder oo4_h, 004_n und 004_s hochgeladen).

Dann sollte Sie das .jpg im Zufallsgenerator weglassen. Das macht es nur unnötig kompliziert.

> Wie kann ich nun genau bestimmen, dass 10 mal _h gezogen wird und 10 mal_s

Gar nicht. Sie ziehen die 20 Bilder - und dann erstellen Sie ein Array mit 10-mal der 1 und 10-mal der 2 (welches Sie dann mischen), um festzulegen, welche der ersten 20 Bilder in der _h und in der _s-Variante gezeigt werden.

Details gerne in einer neuen Frage hier im Support (s. oben "related question"). Posten Sie dort bitte den PHP-Code soweit Sie gekommen sind.

Die beiden Links oben haben Sie gelesen? Nur als Einstieg ... aber so ähnlich wird es auch bei Ihnen laufen :)
asked May 25, 2020 in SoSci Survey (dt.) by s095605 (350 points)
edited May 25, 2020 by s095605
Bilder randomisieren - PHP Funktion

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

...