Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
de:create:functions:statistic [14.01.2015 21:29] adminde:create:functions:statistic [18.05.2019 21:48] – [Hinweise] admin
Zeile 13: Zeile 13:
     * '''max''' -- Größter Wert.     * '''max''' -- Größter Wert.
     * '''mean''' -- Arithmetisches Mittel der Werte.     * '''mean''' -- Arithmetisches Mittel der Werte.
 +    * '''groupmean''' -- Arithmetisches Mittel der Werte einer Teilgruppe, welche durch //Option// definiert wird, angegeben als Sting bestehend aus Variablenname und Code für die zu zählenden Fälle '''AB01=2'''.
 +    * '''filter''' -- Legt fest, welche Fälle bei weiteren Aufrufen der Funktion ''statistic()'' verwendet werden sollen (Details s. [[#teildatensaetze_auswerten|unten]]).
 +
   * //Variablen//\\ Legt fest, für welche Variable(n) die Statistik berechnet werden soll. Die Kennungen der einzelnen Variablen findet man in der **Variablen-Übersicht**. Falls die Statistik mehrere Variabeln benötigt, können diese entweder als Komma-separierter String oder als Array angegeben werden.   * //Variablen//\\ Legt fest, für welche Variable(n) die Statistik berechnet werden soll. Die Kennungen der einzelnen Variablen findet man in der **Variablen-Übersicht**. Falls die Statistik mehrere Variabeln benötigt, können diese entweder als Komma-separierter String oder als Array angegeben werden.
   * //Option//\\ Einige Statistiken benötigen oder erlauben eine dritte Angabe, die mit diesem Parameter angegeben wird (s. unten).   * //Option//\\ Einige Statistiken benötigen oder erlauben eine dritte Angabe, die mit diesem Parameter angegeben wird (s. unten).
   * //AlleDaten//\\ Diese optionale Angabe legt fest, dass nicht nur die abgeschlossenen Interviews, sondern alle Interviews in die Statistik einfließen.   * //AlleDaten//\\ Diese optionale Angabe legt fest, dass nicht nur die abgeschlossenen Interviews, sondern alle Interviews in die Statistik einfließen.
 +
 +===== Hinweise =====
  
 **Wichtig:** In die Berechnung der statistischen Werte werden nur abgeschlossene Interviews aufgenommen, wenn für den Parameter //allData// nicht explizit ''true'' angegeben wird. **Wichtig:** In die Berechnung der statistischen Werte werden nur abgeschlossene Interviews aufgenommen, wenn für den Parameter //allData// nicht explizit ''true'' angegeben wird.
Zeile 21: Zeile 26:
 **Wichtig:** Testdaten aus der Fragebogen-Entwicklung und dem Pretest werden nur dann mitgezählt, wenn das laufende Interview ebenfalls Teil des Tests ist. Wenn das Interview im Rahmen der regulären Datenerhebung durchgeführt wird, zählt ''statistic()'' nur Daten aus der regulären Datenerhebung. **Wichtig:** Testdaten aus der Fragebogen-Entwicklung und dem Pretest werden nur dann mitgezählt, wenn das laufende Interview ebenfalls Teil des Tests ist. Wenn das Interview im Rahmen der regulären Datenerhebung durchgeführt wird, zählt ''statistic()'' nur Daten aus der regulären Datenerhebung.
  
-**Hinweis:** Die Daten aus dem aktuellen Interview liegen erst nach zweimaligem Klick auf "Weiter" zur Analyse bereit. Der Ablauf ist folgende: Zunächst wird die Frage gestellt. Nach dem Klick auf "Weiter" werden die Antworten eingelesen (aber noch nicht gespeichert), dann wird die nächste Seite aufgebaut und erst dann werden die Daten gespeichertAuf der Seite, die einer Frage direkt folgt, ist die Angabe zur Frage in der Statistik daher noch nicht enthalten.+**Hinweis:** Die Daten aus dem aktuellen Interview werden von ''statistic()'' nicht berücksichtigt. 
 + 
 +**Tipp:** Die Funktion ''statistic()'' kann eingesetzt werdenum den Fragebogen nach erreichen einer vordefinierten Quote zu schließen ([[:de:survey:quota]]) und weiteren Teilnehmern entweder eine Meldung anzuzeigen oder sie zum Quotenstopp-Link eines Panel-Anbieters umzuleiten. 
 + 
 +**Tipp:** Möchte man nicht alle abgeschlossenen Interview zählen (z.B. wenn Abbrecher mittels ''[[:de:create:functions:redirect]]'' zu einer anderen Seite umgeleitet wurden), ist es sinnvoll, die zu zählende Variable weiter hinten im Fragebogen in eine [[:de:create:questions:internal]] zu kopieren.
  
  
Zeile 120: Zeile 129:
   <p>Die Bewertungen liegen zwischen '.$min.' und '.$max.'.</p>   <p>Die Bewertungen liegen zwischen '.$min.' und '.$max.'.</p>
 '); ');
 +</code>
 +
 +
 +===== Teildatensätze auswerten =====
 +
 +Mittels ''statistic('filter', ...)'' kann ein Filter gesetzt werden, der für alle weiteren Aufrufe von ''statistic()'' angewendet wird.  Als zweiter Parameter können zur Beschleunigung (optional) //Variablen// angegeben werden, die in nachfolgenden Aufrufen benötigt werden.
 +
 +Zurückgegeben wird die Anzahl der Fälle, welche dem Filter entsprechen. Der vierte Parameter //AlleDaten// hat nur Auswirkungen auf den Rückgabewert, nicht aber auf die weitere Zählung.
 +
 +<code php>
 +// Statistik nur über weibliche Teilnehmer (SD02 = 1)
 +// Die RT-Variablen werden gleich geladen, um Latenzzeiten zu reduzieren
 +$n = statistic('filter', array('RT02_01', 'RT02_02', 'RT02_03'), 'SD02==1');
 +// Mittelwert der Ratings (nur Frauen)
 +$mean1 = statistic('mean', 'RT02_01');
 +$mean2 = statistic('mean', 'RT02_02');
 +$mean3 = statistic('mean', 'RT02_03');
 +</code>
 +
 +Der Filter erlaubt gängige Vergleichsoperatoren (''>'', ''>='', ''<'', ''%%<=%%'', ''!='', ''==''), Klammern und und Bool'sche Operatoren (''AND'', ''&&'', ''OR'', ''||'', ''NOT'', ''!'').
 +
 +**Hinweis:** Vergleiche sind jeweils nur zwischen einer Variable und einem konstanten Wert (eine Zahl oder ein String) möglich, z.B. ''SD02==2'', Vergleiche zwischen zwei Variablen (''SD03>SD04'') werden nicht unterstützt.
 +
 +<code php>
 +// Statistik nur über weibliche Teilnehmer (SD02 = 1) ab 35 Jahren (SD03 >= 35)
 +$n = statistic('filter', false, '(SD02==1) AND (SD03 >= 35)');
 +</code>
 +
 +Neben den Variablennamen können für den Filter auch ''QUESTNNR'', ''CASE'' und ''LANGUAGE'' verwendet werden.
 +
 +<code php>
 +// Statistik nur über weibliche Teilnehmer (SD02 = 1) ab 35 Jahren (SD03 >= 35) in der deutschen Sprachversion
 +$n = statistic('filter', false, '(SD02==1) AND (SD03 >= 35) AND (LANGUAGE == "ger")');
 </code> </code>
de/create/functions/statistic.txt · Zuletzt geändert: 08.03.2024 10:57 von admin
 
Falls nicht anders bezeichnet, ist der Inhalt dieses Wikis unter der folgenden Lizenz veröffentlicht: CC Attribution-Share Alike 4.0 International
Driven by DokuWiki