Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
de:create:functions:statistic [14.01.2015 21:29]
admin
de:create:functions:statistic [18.05.2019 21:48] (aktuell)
admin [Hinweise]
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.1421267344.txt.gz · Zuletzt geändert: 14.01.2015 21:29 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