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

Liebes Team,

ich möchte in meinem Fragebogen 4 Konstrukte messen. Für jedes Konstrukt habe ich 12 Items generiert. Ich möchte nun alle Fragen randomisieren, also nicht nur die Items innerhalb eines Konstrukts, sondern alle Items insgesamt. Wie kann ich das machen, sodass ich auch bei der Auswertung noch die Items den Konstrukten zuordnen kann?

Vielen Dank im Voraus und liebe Grüße1

in SoSci Survey (dt.) by s098391 (120 points)

1 Answer

0 votes

Am einfachsten packen Sie alle Items in eine Frage und verwenden die Items 1-12 für das erste Konstrukt, 13-24 für das zweite u.s.w.

Die Rotation von Items über mehrere Seiten steht dann in der Anleitung Rotation beschrieben.

Für die Auswertung ist es relativ egal, ob die Items in einer Frage stehen oder über mehrere verteilt sind. Sollten Sie dennoch an den 4 getrennten Fragen hängen, wird es komplizierter. Dann müssten Sie die Items alle einzeln anzeigen lassen und dabei den Fragetitel ausblenden.

by SoSci Survey (52k points)
Vielen lieben Dank für die Antwort.
Ich habe jetzt alle 48 Items in eine Frage gesetzt (NE02) und möchte jetzt eben die gesamten Items über verschiedene Seiten hinweg randomosieren. Am besten wäre es, wenn 12 Items pro Seite sind. Dazu habe ich versucht, diesen Code anzuwenden:

question('NE02');  // BeantwortungFragen
if (!isset($itemsNE02)) {
  // Alle Items der Frage NE02 auflisten
  $itemsAB01 = getItems('NE02', 'all');
  // Liste Mischen
  shuffle($itemsNE02);
  // Die Liste in Teillisten à 20 Items teilen
  $itemsNE02 = array_chunk($itemsNE02, 12);
  // Die Variable für andere Seiten verfügbar machen
  registerVariable($itemsNE02);
}
 
// Die Items über mehrere Seiten verteilt anzeigen
$i = loopPage(count($itemsNE02));
question('NE02', $itemsNE02[$i]);

Leider bekomme ich immer folgende Fehlermeldung:
- Warnung: Bitte beachten Sie, dass die von random() oder shuffle() erzeugten Zufallswerte nicht automatisch im Datensatz gespeichert werden. Zum Speichern können Sie ggf. die Funktion put() verwenden.
- zudem sind die Items nicht auf vier Seiten verteilt, sondern nur auf einer
- Darüberhinaus kommt folgende Fehlermeldung: Items in der nachfolgenden Fragen werden auf dieser Seite schon weiter oben angezeigt. Dies führt fast zwangsläufig zu Datenverlust! Falls Sie eine Frage mehrfach benötigen, legen Sie bitte eine Kopie der Frage an. Betroffen sind folgende Items: NE02_26, NE02_23, NE02_36, NE02_17, NE02_05, NE02_38, NE02_24, NE02_01, NE02_19, NE02_42, NE02_18, NE02_44, NE02_29, NE02_02, NE02_03, NE02_16, NE02_12, NE02_48, NE02_07, NE02_14, NE02_09, NE02_13, NE02_27, NE02_32, NE02_45, NE02_41, NE02_39, NE02_22, NE02_15, NE02_37, NE02_10, NE02_35, NE02_30, NE02_43, NE02_08, NE02_40, NE02_25, NE02_47, NE02_34, NE02_33, NE02_06, NE02_04, NE02_31, NE02_11, NE02_21, NE02_20, NE02_28, NE02_46.


Es wäre sehr nett,wenn Sie mir hierzu nochmal helfen könnten.
Vielen Dank!
Vermutlich haben Sie die Frage NE02 nicht nur mittels question() im PHP-Code aufgerufen, sondern auch noch in die Seite "hineingezogen"? Ziehen Sie sie bitte einfach wieder hinaus. Der Code sieht ansonsten korrekt aus.
Danke für die Antwort, leider funktioniert es immer noch nicht.
Nein, ich habe sie jetzt nur über question() aufgerufen, aber bekomme immer noch Fehlermeldungen..
Woran könnte das noch liegen?
Ich habe auch die gesamte Frage (mit 48 Items) in die Seite gezogen und nicht eingestellt auf Seite 1 nur Item 1-12 anzeigen usw - muss ich dies machen?

Vielen Dank für ihre Mühe!
> aber bekomme immer noch Fehlermeldungen..

Verraten Sie welche, dann kann ich Ihnen antworten :)

> Ich habe auch die gesamte Frage (mit 48 Items) in die Seite gezogen

Nein, das bitte nicht. Außer dem PHP-Code sollte gar nichts auf der Seite stehen.
ok das war dann schonmal ein Fehler :)
also ich habe jetzt diesen Code benutzt:
question('KG02');  // BeantwortungFragen
if (!isset($itemsKG02)) {
  // Alle Items der Frage KG02 auflisten
  $itemsKG02 = getItems('KG02', 'all');
  // Liste Mischen
  shuffle($itemsKG02);
  // Die Liste in Teillisten à 12 Items teilen
  $itemsKG02 = array_chunk($itemsKG02, 12);
  // Die Variable für andere Seiten verfügbar machen
  registerVariable($itemsKG02);
}
 
// Die Items über mehrere Seiten verteilt anzeigen
$i = loopPage(count($itemsKG02));
question('KG02', $itemsKG02[$i]);


Die  Items sind trotzdem alle noch auf einer Seite.
Zudem bekomme ich diese Fehlermeldung:
Items in der nachfolgenden Fragen werden auf dieser Seite schon weiter oben angezeigt. Dies führt fast zwangsläufig zu Datenverlust! Falls Sie eine Frage mehrfach benötigen, legen Sie bitte eine Kopie der Frage an. Betroffen sind folgende Items: KG02_31, KG02_34, KG02_24, KG02_39, KG02_05, KG02_03, KG02_18, KG02_42, KG02_25, KG02_21, KG02_20, KG02_45.


vielen Dank :)
Bitte nehmen Sie die erste Zeile

question('KG02');

noch aus dem PHP-Code. Sonst haben Sie die Frage doppelt auf der Seite. Einmal oben und einmal unten.
Super, vielen lieben Dank, jetzt funktioniert es :).
Bei mir wird noch diese Meldung angezeigt:
>Bitte beachten Sie, dass die von random() oder shuffle() erzeugten Zufallswerte nicht automatisch im Datensatz gespeichert werden. Zum Speichern können Sie ggf. die Funktion put() verwenden.

Muss ich hierbei noch etwas beachten? Werden die Daten jetzt sicher gespeichert oder muss ich da noch eine weitere Funktion angeben?

Vielen Dank!
Falls Sie die Reihenfolge, mit welcher die Items angezeigt werden, für die Auswertung benötigen (z.B. um Reihenstellungseffekte zu analysieren), müssen Sie diese noch separat abspeichern. In der Anleitung zu put() bzw. "interne Variablen" finden Sie entsprechenden Beispiel-Code.
...