14 Stimmen

Statistische Analyse für PHP

Ich versuche, für ein Projekt, an dem ich arbeite, ein Berichtssystem zu schreiben, das die Ergebnisse der Teilnehmer vor und nach dem Test analysiert und einige Analysen dazu durchführt. Ich habe nach bestem Wissen und Gewissen gesucht, aber ich kann keine PHP-Klasse bzw. keinen Funktionssatz finden, der die von mir benötigte Analyse durchführen kann.

Derzeit speichere ich den Datensatz in einer CSV-Datei, und einer meiner Mitarbeiter führt ihn in SPSS aus, um einen t-Test für gepaarte Stichproben durchzuführen (das ist die Analyse, die ich durchführen muss, da wir den p-Wert benötigen).

Ich weiß, dass es diese Klasse in PHP gibt: http://usphp.com/manual/en/ref.stats.php , aber nichts davon scheint so dokumentiert zu sein, dass ich es verstehen kann.

Es macht mir nichts aus, die Analyse selbst zu schreiben, aber wenn sie bereits existiert, möchte ich vermeiden, das Rad neu zu erfinden.

Danke für jede Hilfe!

3voto

Fitz Punkte 384

Es hört sich so an, als wollten Sie die stats_stat_paired_t Funktion. Ich bin mir nicht sicher, ob Sie das schon ausprobiert haben, aber Sie können vielleicht herausfinden, ob diese Funktion das tut, was Sie brauchen, indem Sie sich ihre Quellcode . Schauen Sie in statistics.c, Zeile 3201.

3voto

bpeterson76 Punkte 12812

Paul, ich habe genau das für ein psychologisches Testsystem gemacht (www.coolidgetests.com) und fand heraus, dass es wirklich nicht so schwierig war, es selbst zu machen. Wie Sie habe ich nach einer verfügbaren Lösung gesucht und gesucht. Zuerst war es einschüchternd, sich geschlagen zu geben und mit dem Schreiben von Code zu beginnen, aber am Ende fand ich, dass es gar nicht so schlimm war.

In meinem Fall führt der Benutzer einen Test durch, der ein Ergebnis (1-4) erzeugt, das in einer DB gespeichert wird. Um den Bericht zu erstellen, wähle ich die gesamte Gruppe von Antworten für den ausgewählten Test aus, unterteile sie in Antworten, die normal bewertet werden, und solche, die umgekehrt sind (1=4, 2=3 usw.), und tausche diese dann mit einer Switch-Anweisung um. Die beiden Arrays werden kombiniert, dann werden Berechnungsfunktionen ausgeführt, um T-, Z- und andere relevante statistische Werte zu erzeugen. Die Diagramme werden ganz einfach über eine Tabelle erstellt, die anhand des berechneten Prozentsatzes schattiert wird.

UPDATE -

Hier sind meine Z- und T-Score-Funktionen:

function calculateZscore($scale, $median, $stdiv) {
        if ($stdiv != 0) {
            $zval = ($scale - $median) / $stdiv;
        }

        else $zval = 0;
        return $zval;
    }

    function calculateTscore($zval) {
        $tval = 50+ (10) * ($zval);
        return $tval;
    }

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X